---
Fuzzer filename: '/src/dovecot/src/lib-smtp/fuzz-smtp-server.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    test_server_continue
      functionSourceFile: '/src/dovecot/src/lib-smtp/fuzz-smtp-server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_stop_delayed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz-smtp-server.c:70,2'
          Dst:             io_loop_stop_delayed
    - functionName:    server_connection_free
      functionSourceFile: '/src/dovecot/src/lib-smtp/fuzz-smtp-server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_stop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz-smtp-server.c:64,2'
          Dst:             io_loop_stop
    - functionName:    server_cmd_data_continue
      functionSourceFile: '/src/dovecot/src/lib-smtp/fuzz-smtp-server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn_ctx
        - cmd
        - trans
      BBCount:         19
      ICount:          106
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - i_stream_get_data
        - i_stream_read
        - i_stream_skip
        - smtp_server_cmd_data_check_size
        - smtp_server_reply_all
      functionUses:    0
      BranchProfiles:
        - Branch String:   'fuzz-smtp-server.c:33,47'
          Branch Sides:
            - BranchSide:      'fuzz-smtp-server.c:33,2'
              BranchSideFuncs:
                - smtp_server_reply_all
                - i_stream_get_data
                - i_stream_skip
                - smtp_server_cmd_data_check_size
                - i_stream_read
            - BranchSide:      'fuzz-smtp-server.c:33,50'
              BranchSideFuncs:
                - smtp_server_reply_all
                - i_stream_get_data
                - i_stream_skip
                - smtp_server_cmd_data_check_size
                - i_stream_read
        - Branch String:   'fuzz-smtp-server.c:33,2'
          Branch Sides:
            - BranchSide:      'fuzz-smtp-server.c:34,28'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_skip
                - smtp_server_cmd_data_check_size
                - i_stream_read
                - smtp_server_reply_all
            - BranchSide:      'fuzz-smtp-server.c:40,6'
              BranchSideFuncs:
                - smtp_server_reply_all
        - Branch String:   'fuzz-smtp-server.c:36,7'
          Branch Sides:
            - BranchSide:      'fuzz-smtp-server.c:33,2'
              BranchSideFuncs:
                - i_stream_read
                - smtp_server_reply_all
                - i_stream_get_data
                - i_stream_skip
                - smtp_server_cmd_data_check_size
            - BranchSide:      'fuzz-smtp-server.c:37,4'
              BranchSideFuncs: []
        - Branch String:   'fuzz-smtp-server.c:40,6'
          Branch Sides:
            - BranchSide:      'fuzz-smtp-server.c:41,3'
              BranchSideFuncs: []
            - BranchSide:      'fuzz-smtp-server.c:42,6'
              BranchSideFuncs:
                - smtp_server_reply_all
        - Branch String:   'fuzz-smtp-server.c:42,14'
          Branch Sides:
            - BranchSide:      'fuzz-smtp-server.c:42,17'
              BranchSideFuncs:
                - smtp_server_reply_all
            - BranchSide:      'fuzz-smtp-server.c:47,24'
              BranchSideFuncs:
                - smtp_server_reply_all
        - Branch String:   'fuzz-smtp-server.c:42,6'
          Branch Sides:
            - BranchSide:      'fuzz-smtp-server.c:44,3'
              BranchSideFuncs: []
            - BranchSide:      'fuzz-smtp-server.c:47,24'
              BranchSideFuncs:
                - smtp_server_reply_all
      Callsites:
        - Src:             'fuzz-smtp-server.c:33,16'
          Dst:             i_stream_read
        - Src:             'fuzz-smtp-server.c:34,10'
          Dst:             i_stream_get_data
        - Src:             'fuzz-smtp-server.c:35,3'
          Dst:             i_stream_skip
        - Src:             'fuzz-smtp-server.c:36,8'
          Dst:             smtp_server_cmd_data_check_size
        - Src:             'fuzz-smtp-server.c:47,2'
          Dst:             smtp_server_reply_all
    - functionName:    server_cmd_data_begin
      functionSourceFile: '/src/dovecot/src/lib-smtp/fuzz-smtp-server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn_ctx
        - cmd
        - trans
        - data_input
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    server_cmd_rcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/fuzz-smtp-server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 20
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn_ctx
        - cmd
        - rcpt
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/dovecot/src/lib-smtp/fuzz-smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _param_data
        - _param_size
      BBCount:         9
      ICount:          88
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - fuzzer_deinit
        - fuzzer_init
        - fuzzer_io_as_fd
        - i_panic
        - io_loop_create
        - io_loop_run
        - smtp_server_connection_create
        - smtp_server_connection_start
        - smtp_server_deinit
        - smtp_server_init
        - t_pop
        - t_push
        - test_server_continue
        - timeout_add_short
        - timeout_remove
      functionUses:    0
      BranchProfiles:
        - Branch String:   'fuzz-smtp-server.c:102,1'
          Branch Sides:
            - BranchSide:      'fuzz-smtp-server.c:102,1'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'fuzz-smtp-server.c:102,1'
              BranchSideFuncs:
                - fuzzer_deinit
      Callsites:
        - Src:             'fuzz-smtp-server.c:73,1'
          Dst:             fuzzer_init
        - Src:             'fuzz-smtp-server.c:73,1'
          Dst:             t_push
        - Src:             'fuzz-smtp-server.c:73,1'
          Dst:             io_loop_create
        - Src:             'fuzz-smtp-server.c:73,1'
          Dst:             fuzzer_io_as_fd
        - Src:             'fuzz-smtp-server.c:90,7'
          Dst:             timeout_add_short
        - Src:             'fuzz-smtp-server.c:90,7'
          Dst:             test_server_continue
        - Src:             'fuzz-smtp-server.c:91,16'
          Dst:             smtp_server_init
        - Src:             'fuzz-smtp-server.c:93,9'
          Dst:             smtp_server_connection_create
        - Src:             'fuzz-smtp-server.c:95,2'
          Dst:             smtp_server_connection_start
        - Src:             'fuzz-smtp-server.c:97,2'
          Dst:             io_loop_run
        - Src:             'fuzz-smtp-server.c:99,2'
          Dst:             smtp_server_deinit
        - Src:             'fuzz-smtp-server.c:100,2'
          Dst:             timeout_remove
        - Src:             'fuzz-smtp-server.c:102,1'
          Dst:             t_pop
        - Src:             'fuzz-smtp-server.c:102,1'
          Dst:             i_panic
        - Src:             'fuzz-smtp-server.c:102,1'
          Dst:             fuzzer_deinit
    - functionName:    cmd_data_input_error
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         14
      ICount:          102
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_stream_get_disconnect_reason
        - smtp_server_command_fail
        - smtp_server_command_is_replied
        - smtp_server_connection_close
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:253,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:254,39'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:261,41'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:254,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:255,29'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:258,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-data.c:262,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:262,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-cmd-data.c:262,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_close
      Callsites:
        - Src:             'smtp-server-cmd-data.c:254,8'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-data.c:255,4'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-cmd-data.c:261,10'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-server-cmd-data.c:262,2'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-data.c:262,2'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-data.c:262,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-data.c:263,2'
          Dst:             smtp_server_connection_close
    - functionName:    cmd_data_chunk_finish
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_unref
        - smtp_server_command_input_lock
        - smtp_server_connection_data_check_state
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:236,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:237,3'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-data.c:239,20'
              BranchSideFuncs:
                - smtp_server_reply
      Callsites:
        - Src:             'smtp-server-cmd-data.c:232,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-data.c:233,2'
          Dst:             i_stream_unref
        - Src:             'smtp-server-cmd-data.c:236,7'
          Dst:             smtp_server_connection_data_check_state
        - Src:             'smtp-server-cmd-data.c:239,2'
          Dst:             smtp_server_reply
    - functionName:    smtp_server_connection_data_check_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         42
      ICount:          237
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - smtp_server_command_abort
        - smtp_server_command_fail
        - smtp_server_transaction_has_rcpt
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:58,34'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:58,37'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
                - smtp_server_command_fail
                - smtp_server_command_fail
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:66,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
                - smtp_server_command_fail
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:58,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:60,28'
              BranchSideFuncs:
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:66,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
                - smtp_server_command_fail
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:67,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:67,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
                - smtp_server_command_fail
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:72,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:66,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:68,28'
              BranchSideFuncs:
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:72,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:72,32'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:73,7'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:90,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
        - Branch String:   'smtp-server-cmd-data.c:74,41'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:75,7'
              BranchSideFuncs:
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-cmd-data.c:90,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
        - Branch String:   'smtp-server-cmd-data.c:72,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:83,28'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-cmd-data.c:90,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
        - Branch String:   'smtp-server-cmd-data.c:90,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:91,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:94,6'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
        - Branch String:   'smtp-server-cmd-data.c:94,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:96,7'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-cmd-data.c:120,7'
              BranchSideFuncs:
                - smtp_server_transaction_has_rcpt
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:96,33'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:97,41'
              BranchSideFuncs:
                - smtp_server_command_fail
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-cmd-data.c:98,8'
              BranchSideFuncs:
                - smtp_server_command_fail
                - smtp_server_command_abort
        - Branch String:   'smtp-server-cmd-data.c:96,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:98,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:118,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-data.c:98,33'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:98,36'
              BranchSideFuncs:
                - smtp_server_command_fail
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-cmd-data.c:112,30'
              BranchSideFuncs:
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:98,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:104,5'
              BranchSideFuncs:
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-cmd-data.c:112,30'
              BranchSideFuncs:
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:120,33'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:121,38'
              BranchSideFuncs:
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:122,29'
              BranchSideFuncs:
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:120,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:122,29'
              BranchSideFuncs:
                - smtp_server_command_fail
      Callsites:
        - Src:             'smtp-server-cmd-data.c:60,3'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-cmd-data.c:68,3'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-cmd-data.c:83,3'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-cmd-data.c:97,8'
          Dst:             smtp_server_transaction_has_rcpt
        - Src:             'smtp-server-cmd-data.c:104,5'
          Dst:             smtp_server_command_abort
        - Src:             'smtp-server-cmd-data.c:112,5'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-cmd-data.c:121,5'
          Dst:             smtp_server_transaction_has_rcpt
        - Src:             'smtp-server-cmd-data.c:122,4'
          Dst:             smtp_server_command_fail
    - functionName:    cmd_data_do_handle_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         54
      ICount:          310
      EdgeCount:       65
      CyclomaticComplexity: 13
      functionsReached:
        - cmd_data_chunk_finish
        - cmd_data_input_error
        - e_debug
        - event_reason_end
        - event_send_abort
        - event_want_level
        - i_panic
        - i_stream_get_data_size
        - i_stream_have_bytes_left
        - smtp_server_cmd_data_check_size
        - smtp_server_command_input_lock
        - smtp_server_command_is_replied
        - smtp_server_connection_reason_begin
        - smtp_server_connection_timeout_start
        - smtp_server_connection_timeout_stop
        - smtp_server_transaction_received
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:274,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:274,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:276,2'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - i_panic
                - cmd_data_input_error
                - smtp_server_cmd_data_check_size
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:276,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:276,2'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - i_panic
                - cmd_data_input_error
                - smtp_server_cmd_data_check_size
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:276,2'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - i_panic
                - cmd_data_input_error
                - smtp_server_cmd_data_check_size
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:276,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:276,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:279,39'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - i_panic
                - cmd_data_input_error
                - smtp_server_cmd_data_check_size
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:283,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:284,40'
              BranchSideFuncs:
                - smtp_server_cmd_data_check_size
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:305,7'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - i_panic
                - cmd_data_input_error
        - Branch String:   'smtp-server-cmd-data.c:284,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:285,4'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:286,40'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
                - e_debug
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:286,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:287,4'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:293,15'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - event_want_level
                - event_send_abort
                - cmd_data_chunk_finish
                - e_debug
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:287,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:287,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-cmd-data.c:287,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_transaction_received
                - smtp_server_command_input_lock
                - smtp_server_connection_timeout_stop
        - Branch String:   'smtp-server-cmd-data.c:293,36'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:294,30'
              BranchSideFuncs:
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:298,4'
              BranchSideFuncs:
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:293,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:295,4'
              BranchSideFuncs:
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:298,4'
              BranchSideFuncs:
                - i_stream_get_data_size
                - smtp_server_connection_timeout_start
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:295,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:295,4'
              BranchSideFuncs:
                - e_debug
                - cmd_data_chunk_finish
            - BranchSide:      'smtp-server-cmd-data.c:295,4'
              BranchSideFuncs:
                - event_send_abort
                - cmd_data_chunk_finish
        - Branch String:   'smtp-server-cmd-data.c:297,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:299,4'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_timeout_stop
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:302,41'
              BranchSideFuncs:
                - smtp_server_connection_timeout_start
        - Branch String:   'smtp-server-cmd-data.c:299,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:299,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-cmd-data.c:299,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_timeout_stop
        - Branch String:   'smtp-server-cmd-data.c:305,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:306,25'
              BranchSideFuncs:
                - cmd_data_input_error
            - BranchSide:      'smtp-server-cmd-data.c:310,3'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:310,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:310,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'smtp-server-cmd-data.c:274,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:276,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:279,3'
          Dst:             smtp_server_connection_reason_begin
        - Src:             'smtp-server-cmd-data.c:282,2'
          Dst:             event_reason_end
        - Src:             'smtp-server-cmd-data.c:284,8'
          Dst:             smtp_server_cmd_data_check_size
        - Src:             'smtp-server-cmd-data.c:286,15'
          Dst:             i_stream_have_bytes_left
        - Src:             'smtp-server-cmd-data.c:287,4'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-data.c:287,4'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-data.c:287,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-data.c:288,4'
          Dst:             smtp_server_transaction_received
        - Src:             'smtp-server-cmd-data.c:291,4'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-data.c:292,4'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-cmd-data.c:294,5'
          Dst:             i_stream_have_bytes_left
        - Src:             'smtp-server-cmd-data.c:295,4'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-data.c:295,4'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-data.c:295,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-data.c:296,4'
          Dst:             cmd_data_chunk_finish
        - Src:             'smtp-server-cmd-data.c:297,14'
          Dst:             i_stream_get_data_size
        - Src:             'smtp-server-cmd-data.c:299,4'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-data.c:299,4'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-data.c:299,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-data.c:300,4'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-cmd-data.c:302,4'
          Dst:             smtp_server_connection_timeout_start
        - Src:             'smtp-server-cmd-data.c:306,4'
          Dst:             cmd_data_input_error
        - Src:             'smtp-server-cmd-data.c:310,3'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-data.c:310,3'
          Dst:             i_panic
    - functionName:    smtp_server_cmd_data_check_size
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         14
      ICount:          93
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - smtp_server_cmd_data_size_limit_exceeded
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:39,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:39,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:41,6'
              BranchSideFuncs:
                - smtp_server_cmd_data_size_limit_exceeded
        - Branch String:   'smtp-server-cmd-data.c:41,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:42,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:43,6'
              BranchSideFuncs:
                - smtp_server_cmd_data_size_limit_exceeded
        - Branch String:   'smtp-server-cmd-data.c:43,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:44,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:45,6'
              BranchSideFuncs:
                - smtp_server_cmd_data_size_limit_exceeded
        - Branch String:   'smtp-server-cmd-data.c:45,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:46,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:48,43'
              BranchSideFuncs:
                - smtp_server_cmd_data_size_limit_exceeded
      Callsites:
        - Src:             'smtp-server-cmd-data.c:39,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:48,2'
          Dst:             smtp_server_cmd_data_size_limit_exceeded
    - functionName:    smtp_server_cmd_data_size_limit_exceeded
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_command_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-cmd-data.c:30,2'
          Dst:             smtp_server_command_fail
    - functionName:    cmd_data_handle_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmd_data_do_handle_input
        - smtp_server_cmd_data_check_size
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_ref
        - smtp_server_connection_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:322,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:323,3'
              BranchSideFuncs:
                - smtp_server_connection_ref
                - smtp_server_command_ref
                - cmd_data_do_handle_input
                - smtp_server_command_unref
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-cmd-data.c:325,29'
              BranchSideFuncs:
                - smtp_server_connection_ref
                - smtp_server_command_ref
                - cmd_data_do_handle_input
                - smtp_server_command_unref
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-cmd-data.c:322,7'
          Dst:             smtp_server_cmd_data_check_size
        - Src:             'smtp-server-cmd-data.c:325,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-cmd-data.c:326,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-data.c:329,8'
          Dst:             cmd_data_do_handle_input
        - Src:             'smtp-server-cmd-data.c:331,2'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-data.c:332,2'
          Dst:             smtp_server_connection_unref
    - functionName:    cmd_data_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmd_data_handle_input
        - smtp_server_connection_timeout_reset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-cmd-data.c:339,2'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-cmd-data.c:340,8'
          Dst:             cmd_data_handle_input
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmd_data_next
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         79
      ICount:          440
      EdgeCount:       94
      CyclomaticComplexity: 17
      functionsReached:
        - array_count_i
        - cmd_data_handle_input
        - cmd_data_input
        - e_debug
        - event_reason_end
        - event_send_abort
        - event_want_level
        - i_panic
        - i_stream_chain_append
        - i_stream_chain_append_eof
        - smtp_server_command_input_capture
        - smtp_server_command_input_unlock
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_set_reply_count
        - smtp_server_command_unref
        - smtp_server_connection_data_check_state
        - smtp_server_connection_reason_begin
        - smtp_server_connection_set_state
        - smtp_server_connection_timeout_start
        - smtp_server_transaction_data_command
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:354,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:354,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:355,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:355,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:355,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:359,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:359,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:359,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:359,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:359,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:359,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:362,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:362,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:362,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
            - BranchSide:      'smtp-server-cmd-data.c:362,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
        - Branch String:   'smtp-server-cmd-data.c:367,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:368,3'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
            - BranchSide:      'smtp-server-cmd-data.c:370,6'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
        - Branch String:   'smtp-server-cmd-data.c:370,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:373,7'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
                - array_count_i
                - smtp_server_command_set_reply_count
            - BranchSide:      'smtp-server-cmd-data.c:380,35'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:373,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:375,40'
              BranchSideFuncs:
                - array_count_i
                - smtp_server_command_set_reply_count
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:378,2'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - i_stream_chain_append
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:383,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:384,3'
              BranchSideFuncs:
                - i_stream_chain_append
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:393,6'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:384,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:384,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:385,25'
              BranchSideFuncs:
                - i_stream_chain_append
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:387,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:388,4'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - i_stream_chain_append_eof
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:391,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:388,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:388,4'
              BranchSideFuncs:
                - e_debug
                - i_stream_chain_append_eof
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:388,4'
              BranchSideFuncs:
                - event_send_abort
                - i_stream_chain_append_eof
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
        - Branch String:   'smtp-server-cmd-data.c:393,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:394,42'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
                - e_debug
            - BranchSide:      'smtp-server-cmd-data.c:417,37'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
        - Branch String:   'smtp-server-cmd-data.c:396,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:396,3'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:396,3'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:399,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:399,3'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:399,3'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:399,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:399,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:401,3'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:401,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:401,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:403,40'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:407,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:408,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:413,8'
              BranchSideFuncs:
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
        - Branch String:   'smtp-server-cmd-data.c:408,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:408,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:410,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-data.c:413,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:414,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
            - BranchSide:      'smtp-server-cmd-data.c:415,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - smtp_server_command_input_unlock
        - Branch String:   'smtp-server-cmd-data.c:417,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:418,36'
              BranchSideFuncs:
                - smtp_server_command_input_unlock
            - BranchSide:      'smtp-server-cmd-data.c:420,7'
              BranchSideFuncs:
                - cmd_data_handle_input
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
        - Branch String:   'smtp-server-cmd-data.c:420,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:423,41'
              BranchSideFuncs:
                - smtp_server_connection_timeout_start
                - smtp_server_command_input_capture
                - cmd_data_handle_input
            - BranchSide:      'smtp-server-cmd-data.c:427,31'
              BranchSideFuncs:
                - cmd_data_handle_input
      Callsites:
        - Src:             'smtp-server-cmd-data.c:354,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:355,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:359,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:362,2'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-data.c:362,2'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-data.c:362,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-data.c:364,2'
          Dst:             smtp_server_transaction_data_command
        - Src:             'smtp-server-cmd-data.c:367,7'
          Dst:             smtp_server_connection_data_check_state
        - Src:             'smtp-server-cmd-data.c:376,5'
          Dst:             array_count_i
        - Src:             'smtp-server-cmd-data.c:375,4'
          Dst:             smtp_server_command_set_reply_count
        - Src:             'smtp-server-cmd-data.c:380,2'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-data.c:384,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:385,3'
          Dst:             i_stream_chain_append
        - Src:             'smtp-server-cmd-data.c:388,4'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-data.c:388,4'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-data.c:388,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-data.c:389,4'
          Dst:             i_stream_chain_append_eof
        - Src:             'smtp-server-cmd-data.c:396,3'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-data.c:396,3'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-data.c:396,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-data.c:398,3'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-data.c:399,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:401,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:403,4'
          Dst:             smtp_server_connection_reason_begin
        - Src:             'smtp-server-cmd-data.c:406,3'
          Dst:             event_reason_end
        - Src:             'smtp-server-cmd-data.c:408,4'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-data.c:408,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:410,4'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-data.c:413,8'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-data.c:417,6'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-data.c:418,3'
          Dst:             smtp_server_command_input_unlock
        - Src:             'smtp-server-cmd-data.c:423,4'
          Dst:             smtp_server_connection_timeout_start
        - Src:             'smtp-server-cmd-data.c:424,4'
          Dst:             smtp_server_command_input_capture
        - Src:             'smtp-server-cmd-data.c:424,4'
          Dst:             cmd_data_input
        - Src:             'smtp-server-cmd-data.c:427,9'
          Dst:             cmd_data_handle_input
    - functionName:    cmd_data_chunk_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_command_replied_success
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:222,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:222,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:223,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-data.c:222,7'
          Dst:             smtp_server_command_replied_success
    - functionName:    cmd_data_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         11
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_unref
        - smtp_server_connection_reset_state
        - smtp_server_transaction_finished
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:187,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:187,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:188,18'
              BranchSideFuncs:
                - i_stream_unref
                - smtp_server_transaction_finished
                - smtp_server_connection_reset_state
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:190,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:190,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:190,2'
              BranchSideFuncs:
                - smtp_server_transaction_finished
                - smtp_server_connection_reset_state
      Callsites:
        - Src:             'smtp-server-cmd-data.c:187,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:188,2'
          Dst:             i_stream_unref
        - Src:             'smtp-server-cmd-data.c:190,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:191,2'
          Dst:             smtp_server_transaction_finished
        - Src:             'smtp-server-cmd-data.c:194,2'
          Dst:             smtp_server_connection_reset_state
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:75,2'
          Dst:             i_panic
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_cmd_bdat
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 625
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         31
      ICount:          182
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - i_stream_unref
        - smtp_command_parse_data_with_size
        - smtp_server_connection_data_chunk_add
        - smtp_server_connection_data_chunk_init
        - smtp_server_reply
        - str_to_uoff
        - strcasecmp
        - t_strsplit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:633,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:634,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-data.c:639,41'
              BranchSideFuncs:
                - smtp_server_connection_data_chunk_init
                - t_strsplit
                - str_to_uoff
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-data.c:646,22'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:646,37'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
            - BranchSide:      'smtp-server-cmd-data.c:647,21'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
        - Branch String:   'smtp-server-cmd-data.c:646,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:647,21'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
            - BranchSide:      'smtp-server-cmd-data.c:651,13'
              BranchSideFuncs:
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-data.c:652,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:653,22'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
            - BranchSide:      'smtp-server-cmd-data.c:656,25'
              BranchSideFuncs:
                - strcasecmp
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-data.c:656,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:657,22'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
            - BranchSide:      'smtp-server-cmd-data.c:661,15'
              BranchSideFuncs:
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
                - smtp_command_parse_data_with_size
        - Branch String:   'smtp-server-cmd-data.c:665,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:665,18'
              BranchSideFuncs:
                - smtp_command_parse_data_with_size
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:668,45'
              BranchSideFuncs:
                - smtp_command_parse_data_with_size
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
        - Branch String:   'smtp-server-cmd-data.c:665,27'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:665,31'
              BranchSideFuncs:
                - smtp_command_parse_data_with_size
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:672,6'
              BranchSideFuncs:
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
        - Branch String:   'smtp-server-cmd-data.c:665,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:668,45'
              BranchSideFuncs:
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:672,6'
              BranchSideFuncs:
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
                - i_stream_unref
        - Branch String:   'smtp-server-cmd-data.c:672,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:673,3'
              BranchSideFuncs:
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:677,46'
              BranchSideFuncs:
                - smtp_server_connection_data_chunk_add
                - i_stream_unref
      Callsites:
        - Src:             'smtp-server-cmd-data.c:634,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-data.c:639,2'
          Dst:             smtp_server_connection_data_chunk_init
        - Src:             'smtp-server-cmd-data.c:645,9'
          Dst:             t_strsplit
        - Src:             'smtp-server-cmd-data.c:646,25'
          Dst:             str_to_uoff
        - Src:             'smtp-server-cmd-data.c:647,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-data.c:653,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-data.c:656,14'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-data.c:657,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-data.c:668,11'
          Dst:             smtp_command_parse_data_with_size
        - Src:             'smtp-server-cmd-data.c:673,3'
          Dst:             i_stream_unref
        - Src:             'smtp-server-cmd-data.c:677,8'
          Dst:             smtp_server_connection_data_chunk_add
        - Src:             'smtp-server-cmd-data.c:679,2'
          Dst:             i_stream_unref
    - functionName:    smtp_server_connection_data_chunk_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         16
      ICount:          146
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - cmd_data_chunk_replied
        - cmd_data_destroy
        - i_panic
        - i_stream_create_chain
        - malloc_multiply_check
        - p_malloc
        - smtp_server_command_add_hook
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:563,31'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:563,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:563,34'
              BranchSideFuncs:
                - i_stream_create_chain
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:563,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:563,6'
              BranchSideFuncs:
                - i_stream_create_chain
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:564,3'
              BranchSideFuncs:
                - i_stream_create_chain
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:564,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:564,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:565,3'
              BranchSideFuncs:
                - i_stream_create_chain
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:565,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:565,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:567,27'
              BranchSideFuncs:
                - i_stream_create_chain
      Callsites:
        - Src:             'smtp-server-cmd-data.c:551,13'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-cmd-data.c:551,13'
          Dst:             p_malloc
        - Src:             'smtp-server-cmd-data.c:556,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:556,2'
          Dst:             cmd_data_chunk_replied
        - Src:             'smtp-server-cmd-data.c:558,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:558,2'
          Dst:             cmd_data_destroy
        - Src:             'smtp-server-cmd-data.c:564,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:565,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:567,4'
          Dst:             i_stream_create_chain
    - 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:    34
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_data_chunk_add
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
        - bool
      constantsTouched: []
      argNames:
        - cmd
        - chunk
        - chunk_size
        - chunk_last
        - client_input
      BBCount:         28
      ICount:          230
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - cmd_data_chunk_replied
        - cmd_data_replied
        - cmd_data_start_input
        - i_panic
        - i_stream_ref
        - i_stream_unref
        - smtp_server_cmd_data_size_limit_exceeded
        - smtp_server_command_add_hook
        - smtp_server_command_remove_hook
        - smtp_server_connection_data_check_state
        - smtp_server_transaction_data_command
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:583,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:583,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:584,2'
              BranchSideFuncs:
                - smtp_server_connection_data_check_state
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - smtp_server_cmd_data_size_limit_exceeded
                - smtp_server_transaction_data_command
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:584,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:584,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:586,6'
              BranchSideFuncs:
                - smtp_server_connection_data_check_state
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - smtp_server_cmd_data_size_limit_exceeded
                - smtp_server_transaction_data_command
        - Branch String:   'smtp-server-cmd-data.c:586,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:587,40'
              BranchSideFuncs:
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - smtp_server_cmd_data_size_limit_exceeded
            - BranchSide:      'smtp-server-cmd-data.c:589,47'
              BranchSideFuncs:
                - smtp_server_connection_data_check_state
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - smtp_server_cmd_data_size_limit_exceeded
        - Branch String:   'smtp-server-cmd-data.c:589,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:590,3'
              BranchSideFuncs:
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - smtp_server_cmd_data_size_limit_exceeded
            - BranchSide:      'smtp-server-cmd-data.c:593,13'
              BranchSideFuncs:
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - smtp_server_cmd_data_size_limit_exceeded
        - Branch String:   'smtp-server-cmd-data.c:594,39'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:595,7'
              BranchSideFuncs:
                - smtp_server_cmd_data_size_limit_exceeded
            - BranchSide:      'smtp-server-cmd-data.c:596,44'
              BranchSideFuncs:
                - smtp_server_cmd_data_size_limit_exceeded
        - Branch String:   'smtp-server-cmd-data.c:595,33'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:595,36'
              BranchSideFuncs:
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - smtp_server_cmd_data_size_limit_exceeded
            - BranchSide:      'smtp-server-cmd-data.c:599,26'
              BranchSideFuncs:
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
        - Branch String:   'smtp-server-cmd-data.c:594,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:596,44'
              BranchSideFuncs:
                - smtp_server_cmd_data_size_limit_exceeded
            - BranchSide:      'smtp-server-cmd-data.c:599,26'
              BranchSideFuncs:
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
        - Branch String:   'smtp-server-cmd-data.c:601,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:602,3'
              BranchSideFuncs:
                - smtp_server_command_remove_hook
                - smtp_server_command_add_hook
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:610,26'
              BranchSideFuncs:
                - i_stream_ref
                - cmd_data_start_input
                - i_stream_unref
      Callsites:
        - Src:             'smtp-server-cmd-data.c:583,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:584,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:587,3'
          Dst:             smtp_server_transaction_data_command
        - Src:             'smtp-server-cmd-data.c:589,7'
          Dst:             smtp_server_connection_data_check_state
        - Src:             'smtp-server-cmd-data.c:596,3'
          Dst:             smtp_server_cmd_data_size_limit_exceeded
        - Src:             'smtp-server-cmd-data.c:602,3'
          Dst:             smtp_server_command_remove_hook
        - Src:             'smtp-server-cmd-data.c:602,3'
          Dst:             cmd_data_chunk_replied
        - Src:             'smtp-server-cmd-data.c:605,3'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:605,3'
          Dst:             cmd_data_replied
        - Src:             'smtp-server-cmd-data.c:614,2'
          Dst:             i_stream_ref
        - Src:             'smtp-server-cmd-data.c:616,2'
          Dst:             cmd_data_start_input
        - Src:             'smtp-server-cmd-data.c:617,2'
          Dst:             i_stream_unref
    - functionName:    cmd_data_chunk_replied
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         20
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:204,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:204,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:206,9'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_replied_success
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:206,9'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:206,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:207,9'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_replied_success
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:209,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:209,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:210,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
        - Branch String:   'smtp-server-cmd-data.c:210,52'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:210,52'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:211,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-data.c:210,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:210,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:212,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-data.c:204,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:206,9'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:209,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-data.c:209,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:210,7'
          Dst:             smtp_server_command_replied_success
    - functionName:    cmd_data_replied
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         10
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_server_command_input_lock
        - smtp_server_command_input_unlock
        - smtp_server_command_replied_success
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:173,9'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:173,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:174,9'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - smtp_server_command_replied_success
                - smtp_server_command_input_unlock
        - Branch String:   'smtp-server-cmd-data.c:177,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:177,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:178,36'
              BranchSideFuncs:
                - smtp_server_command_input_unlock
      Callsites:
        - Src:             'smtp-server-cmd-data.c:173,9'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:176,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-data.c:177,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-data.c:178,3'
          Dst:             smtp_server_command_input_unlock
    - functionName:    cmd_data_start_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
        - input
      BBCount:         26
      ICount:          163
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - cmd_data_chunk_completed
        - cmd_data_completed
        - cmd_data_next
        - i_panic
        - i_stream_ref
        - smtp_server_command_add_hook
        - smtp_server_command_input_lock
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:438,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:438,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:440,6'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
                - smtp_server_command_add_hook
                - smtp_server_command_input_lock
                - i_stream_ref
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:440,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:441,3'
              BranchSideFuncs:
                - i_stream_ref
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
                - smtp_server_command_add_hook
                - smtp_server_command_input_lock
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:445,25'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
                - smtp_server_command_add_hook
                - smtp_server_command_input_lock
        - Branch String:   'smtp-server-cmd-data.c:441,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:441,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:442,28'
              BranchSideFuncs:
                - i_stream_ref
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
                - smtp_server_command_add_hook
                - smtp_server_command_input_lock
        - Branch String:   'smtp-server-cmd-data.c:447,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:448,34'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
                - smtp_server_command_add_hook
            - BranchSide:      'smtp-server-cmd-data.c:450,6'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
                - smtp_server_command_add_hook
        - Branch String:   'smtp-server-cmd-data.c:450,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:451,3'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
            - BranchSide:      'smtp-server-cmd-data.c:455,3'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - cmd_data_next
        - Branch String:   'smtp-server-cmd-data.c:460,41'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:461,3'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - cmd_data_next
            - BranchSide:      'smtp-server-cmd-data.c:464,3'
              BranchSideFuncs:
                - smtp_server_command_add_hook
        - Branch String:   'smtp-server-cmd-data.c:460,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:462,17'
              BranchSideFuncs:
                - cmd_data_next
            - BranchSide:      'smtp-server-cmd-data.c:464,3'
              BranchSideFuncs:
                - smtp_server_command_add_hook
      Callsites:
        - Src:             'smtp-server-cmd-data.c:438,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:441,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:443,3'
          Dst:             i_stream_ref
        - Src:             'smtp-server-cmd-data.c:448,3'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-data.c:451,3'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:451,3'
          Dst:             cmd_data_completed
        - Src:             'smtp-server-cmd-data.c:455,3'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:455,3'
          Dst:             cmd_data_chunk_completed
        - Src:             'smtp-server-cmd-data.c:462,3'
          Dst:             cmd_data_next
        - Src:             'smtp-server-cmd-data.c:464,3'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:464,3'
          Dst:             cmd_data_next
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    cmd_data_destroy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         15
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - i_stream_destroy
        - i_stream_unref
        - smtp_server_command_replied_success
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:137,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:137,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:139,6'
              BranchSideFuncs:
                - i_stream_unref
                - smtp_server_command_replied_success
                - i_stream_destroy
                - i_stream_destroy
        - Branch String:   'smtp-server-cmd-data.c:139,53'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:139,53'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - i_stream_destroy
                - i_stream_destroy
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:140,7'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - i_stream_destroy
                - i_stream_destroy
                - i_stream_unref
        - Branch String:   'smtp-server-cmd-data.c:140,28'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:141,44'
              BranchSideFuncs:
                - i_stream_destroy
                - i_stream_destroy
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:143,21'
              BranchSideFuncs:
                - i_stream_destroy
                - i_stream_destroy
                - i_stream_unref
        - Branch String:   'smtp-server-cmd-data.c:139,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:139,6'
              BranchSideFuncs:
                - i_stream_unref
            - BranchSide:      'smtp-server-cmd-data.c:143,21'
              BranchSideFuncs:
                - i_stream_destroy
                - i_stream_destroy
                - i_stream_unref
      Callsites:
        - Src:             'smtp-server-cmd-data.c:137,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:141,8'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-data.c:143,3'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-cmd-data.c:144,3'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-cmd-data.c:148,2'
          Dst:             i_stream_unref
    - functionName:    cmd_data_replied_one
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - array_is_created_i
        - i_memcpy
        - smtp_server_recipient_data_replied
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:159,20'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:159,24'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-data.c:160,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-data.c:159,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:160,3'
              BranchSideFuncs:
                - smtp_server_recipient_data_replied
                - i_memcpy
            - BranchSide:      'smtp-server-cmd-data.c:162,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_replied
                - i_memcpy
        - Branch String:   'smtp-server-cmd-data.c:162,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:162,2'
              BranchSideFuncs:
                - i_memcpy
                - smtp_server_recipient_data_replied
            - BranchSide:      'smtp-server-cmd-data.c:162,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_replied
                - i_memcpy
        - Branch String:   'smtp-server-cmd-data.c:162,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:162,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_replied
                - i_memcpy
            - BranchSide:      'smtp-server-cmd-data.c:163,38'
              BranchSideFuncs:
                - smtp_server_recipient_data_replied
                - i_memcpy
      Callsites:
        - Src:             'smtp-server-cmd-data.c:159,24'
          Dst:             array_is_created_i
        - Src:             'smtp-server-cmd-data.c:162,2'
          Dst:             i_memcpy
        - Src:             'smtp-server-cmd-data.c:163,3'
          Dst:             smtp_server_recipient_data_replied
    - functionName:    cmd_data_start
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data_cmd
      BBCount:         18
      ICount:          122
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - cmd_data_start_input
        - i_panic
        - i_stream_unref
        - smtp_command_parse_data_with_dot
        - smtp_server_command_fail
        - smtp_server_connection_data_check_state
        - smtp_server_connection_reply_immediate
        - smtp_server_connection_set_state
        - smtp_server_transaction_data_command
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:481,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:481,2'
              BranchSideFuncs:
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_fail
                - smtp_server_transaction_data_command
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:481,2'
              BranchSideFuncs:
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_fail
                - smtp_server_transaction_data_command
                - i_panic
        - Branch String:   'smtp-server-cmd-data.c:481,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:481,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-data.c:484,6'
              BranchSideFuncs:
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_fail
                - smtp_server_transaction_data_command
        - Branch String:   'smtp-server-cmd-data.c:484,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:485,40'
              BranchSideFuncs:
                - smtp_server_transaction_data_command
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:488,47'
              BranchSideFuncs:
                - smtp_server_connection_data_check_state
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:488,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:489,3'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:492,6'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
                - smtp_server_command_fail
        - Branch String:   'smtp-server-cmd-data.c:492,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:493,28'
              BranchSideFuncs:
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-cmd-data.c:498,35'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_connection_reply_immediate
                - smtp_command_parse_data_with_dot
                - cmd_data_start_input
                - i_stream_unref
      Callsites:
        - Src:             'smtp-server-cmd-data.c:481,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-data.c:485,3'
          Dst:             smtp_server_transaction_data_command
        - Src:             'smtp-server-cmd-data.c:488,7'
          Dst:             smtp_server_connection_data_check_state
        - Src:             'smtp-server-cmd-data.c:493,3'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-cmd-data.c:498,2'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-data.c:501,2'
          Dst:             smtp_server_connection_reply_immediate
        - Src:             'smtp-server-cmd-data.c:504,14'
          Dst:             smtp_command_parse_data_with_dot
        - Src:             'smtp-server-cmd-data.c:505,2'
          Dst:             cmd_data_start_input
        - Src:             'smtp-server-cmd-data.c:506,2'
          Dst:             i_stream_unref
    - functionName:    smtp_server_cmd_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         6
      ICount:          96
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmd_data_destroy
        - cmd_data_replied
        - cmd_data_replied_one
        - cmd_data_start
        - malloc_multiply_check
        - p_malloc
        - smtp_server_command_add_hook
        - smtp_server_command_input_lock
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-data.c:517,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-data.c:518,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-data.c:523,33'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - malloc_multiply_check
                - p_malloc
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
      Callsites:
        - Src:             'smtp-server-cmd-data.c:518,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-data.c:523,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-data.c:525,13'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-cmd-data.c:525,13'
          Dst:             p_malloc
        - Src:             'smtp-server-cmd-data.c:531,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:531,2'
          Dst:             cmd_data_start
        - Src:             'smtp-server-cmd-data.c:533,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:533,2'
          Dst:             cmd_data_replied_one
        - Src:             'smtp-server-cmd-data.c:535,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:535,2'
          Dst:             cmd_data_replied
        - Src:             'smtp-server-cmd-data.c:537,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-data.c:537,2'
          Dst:             cmd_data_destroy
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    smtp_server_reply_clear
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         10
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_server_reply_destroy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:35,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:35,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:36,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-reply.c:36,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:36,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:37,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:34,2'
          Dst:             smtp_server_reply_destroy
        - Src:             'smtp-server-reply.c:36,3'
          Dst:             i_panic
    - functionName:    smtp_server_reply_destroy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         16
      ICount:          80
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - e_debug
        - event_send_abort
        - event_unref
        - event_want_level
        - str_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:19,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:20,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:22,6'
              BranchSideFuncs:
                - str_free
                - event_want_level
                - event_send_abort
                - event_unref
                - e_debug
        - Branch String:   'smtp-server-reply.c:22,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:23,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - event_unref
                - str_free
                - e_debug
            - BranchSide:      'smtp-server-reply.c:27,6'
              BranchSideFuncs:
                - str_free
        - Branch String:   'smtp-server-reply.c:23,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:23,3'
              BranchSideFuncs:
                - e_debug
                - event_unref
                - str_free
            - BranchSide:      'smtp-server-reply.c:23,3'
              BranchSideFuncs:
                - event_send_abort
                - event_unref
                - str_free
        - Branch String:   'smtp-server-reply.c:27,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:28,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:29,12'
              BranchSideFuncs:
                - str_free
      Callsites:
        - Src:             'smtp-server-reply.c:23,3'
          Dst:             event_want_level
        - Src:             'smtp-server-reply.c:23,3'
          Dst:             e_debug
        - Src:             'smtp-server-reply.c:23,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-reply.c:24,3'
          Dst:             event_unref
        - Src:             'smtp-server-reply.c:29,2'
          Dst:             str_free
    - functionName:    smtp_server_reply_ehlo_add_xclient
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 880
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_server_connection_is_trusted
        - smtp_server_reply_ehlo_add_param
        - t_strarray_join
        - t_strconcat
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:887,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:888,3'
              BranchSideFuncs:
                - t_strarray_join
                - t_strconcat
                - smtp_server_reply_ehlo_add_param
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:889,6'
              BranchSideFuncs:
                - t_strarray_join
                - t_strconcat
                - smtp_server_reply_ehlo_add_param
                - smtp_server_reply_ehlo_add_param
        - Branch String:   'smtp-server-reply.c:889,43'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:890,7'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:891,36'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_param
        - Branch String:   'smtp-server-reply.c:889,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:891,36'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:896,35'
              BranchSideFuncs:
                - t_strarray_join
                - t_strconcat
                - smtp_server_reply_ehlo_add_param
      Callsites:
        - Src:             'smtp-server-reply.c:887,7'
          Dst:             smtp_server_connection_is_trusted
        - Src:             'smtp-server-reply.c:891,3'
          Dst:             smtp_server_reply_ehlo_add_param
        - Src:             'smtp-server-reply.c:898,4'
          Dst:             t_strarray_join
        - Src:             'smtp-server-reply.c:897,3'
          Dst:             t_strconcat
        - Src:             'smtp-server-reply.c:896,2'
          Dst:             smtp_server_reply_ehlo_add_param
    - functionName:    smtp_server_reply_ehlo_add_param
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 721
      functionLinenumberEnd: 739
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - keyword
        - param_fmt
      BBCount:         14
      ICount:          111
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - str_append
        - str_append_c
        - str_len
        - str_vprintfa
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:725,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:725,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:726,2'
              BranchSideFuncs:
                - str_len
                - str_append
                - str_append
                - str_append
                - str_append_c
                - str_vprintfa
                - i_panic
        - Branch String:   'smtp-server-reply.c:726,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:726,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:727,12'
              BranchSideFuncs:
                - str_len
                - str_append
                - str_append
                - str_append
                - str_append_c
                - str_vprintfa
        - Branch String:   'smtp-server-reply.c:732,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:732,6'
              BranchSideFuncs:
                - str_append_c
                - str_vprintfa
                - str_append
            - BranchSide:      'smtp-server-reply.c:733,3'
              BranchSideFuncs:
                - str_append_c
                - str_vprintfa
                - str_append
      Callsites:
        - Src:             'smtp-server-reply.c:725,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:726,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:729,30'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:730,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:731,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:734,3'
          Dst:             str_append_c
        - Src:             'smtp-server-reply.c:735,3'
          Dst:             str_vprintfa
        - Src:             'smtp-server-reply.c:738,2'
          Dst:             str_append
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - 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:    160
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_reply_ehlo_add_vrfy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 869
      functionLinenumberEnd: 877
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:874,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:875,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:876,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:876,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - keyword
      BBCount:         11
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - str_append
        - str_len
      functionUses:    9
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:708,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:708,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:709,2'
              BranchSideFuncs:
                - str_len
                - str_append
                - str_append
                - str_append
                - i_panic
        - Branch String:   'smtp-server-reply.c:709,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:709,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:709,2'
              BranchSideFuncs:
                - str_len
                - str_append
                - str_append
                - str_append
      Callsites:
        - Src:             'smtp-server-reply.c:708,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:709,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:712,30'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:713,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:714,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:715,2'
          Dst:             str_append
    - functionName:    smtp_server_reply_ehlo_add_starttls
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:863,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:864,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:865,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:865,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_size
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 827
      functionLinenumberEnd: 842
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         11
      ICount:          76
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_server_reply_ehlo_add
        - smtp_server_reply_ehlo_add_param
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:833,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:834,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:836,6'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
                - smtp_server_reply_ehlo_add_param
        - Branch String:   'smtp-server-reply.c:836,19'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:836,22'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:840,30'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
        - Branch String:   'smtp-server-reply.c:836,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:837,36'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_param
            - BranchSide:      'smtp-server-reply.c:840,30'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:837,3'
          Dst:             smtp_server_reply_ehlo_add_param
        - Src:             'smtp-server-reply.c:840,3'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_pipelining
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:823,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_enhancedstatuscodes
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 819
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:816,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:817,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:818,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:818,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_dsn
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 799
      functionLinenumberEnd: 807
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:804,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:805,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:806,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:806,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_chunking
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:793,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:794,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:795,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:795,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_binarymime
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:781,47'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:782,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:783,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-reply.c:781,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:783,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:784,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:784,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_8bitmime
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_reply_ehlo_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:770,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:771,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:772,29'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add
      Callsites:
        - Src:             'smtp-server-reply.c:772,2'
          Dst:             smtp_server_reply_ehlo_add
    - functionName:    smtp_server_reply_ehlo_add_params
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - keyword
        - params
      BBCount:         17
      ICount:          114
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - str_append
        - str_append_c
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:747,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:747,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:748,2'
              BranchSideFuncs:
                - str_len
                - str_append
                - str_append
                - str_append
                - str_append_c
                - str_append
                - i_panic
        - Branch String:   'smtp-server-reply.c:748,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:748,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:749,12'
              BranchSideFuncs:
                - str_len
                - str_append
                - str_append
                - str_append
                - str_append_c
                - str_append
        - Branch String:   'smtp-server-reply.c:754,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:754,6'
              BranchSideFuncs:
                - str_append
                - str_append_c
                - str_append
            - BranchSide:      'smtp-server-reply.c:755,3'
              BranchSideFuncs:
                - str_append
                - str_append_c
                - str_append
        - Branch String:   'smtp-server-reply.c:755,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:756,4'
              BranchSideFuncs:
                - str_append_c
                - str_append
                - str_append
            - BranchSide:      'smtp-server-reply.c:760,2'
              BranchSideFuncs:
                - str_append
      Callsites:
        - Src:             'smtp-server-reply.c:747,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:748,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:751,30'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:752,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:753,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:756,4'
          Dst:             str_append_c
        - Src:             'smtp-server-reply.c:757,4'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:761,2'
          Dst:             str_append
    - functionName:    smtp_server_reply_create_ehlo
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 700
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_create
        - str_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:694,10'
          Dst:             smtp_server_reply_create
        - Src:             'smtp-server-reply.c:696,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:697,2'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:698,2'
          Dst:             str_append
    - functionName:    smtp_server_reply_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - status
        - enh_code
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_create_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:215,9'
          Dst:             smtp_server_reply_create_index
    - functionName:    smtp_server_reply_create_index
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - index
        - status
        - enh_code
      BBCount:         14
      ICount:          117
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
        - smtp_server_reply_alloc
        - smtp_server_reply_set_status
        - smtp_server_reply_update_event
        - str_new
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:194,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:194,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:195,2'
              BranchSideFuncs:
                - smtp_server_reply_alloc
                - smtp_server_reply_set_status
                - str_new
                - smtp_server_reply_update_event
                - malloc_multiply_check.88
                - p_malloc.89
                - i_panic
        - Branch String:   'smtp-server-reply.c:195,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:195,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:197,34'
              BranchSideFuncs:
                - smtp_server_reply_alloc
                - smtp_server_reply_set_status
                - str_new
                - smtp_server_reply_update_event
                - malloc_multiply_check.88
                - p_malloc.89
        - Branch String:   'smtp-server-reply.c:201,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:201,6'
              BranchSideFuncs:
                - malloc_multiply_check.88
                - p_malloc.89
                - smtp_server_reply_set_status
                - str_new
                - smtp_server_reply_update_event
            - BranchSide:      'smtp-server-reply.c:202,20'
              BranchSideFuncs:
                - malloc_multiply_check.88
                - p_malloc.89
                - smtp_server_reply_set_status
                - str_new
                - smtp_server_reply_update_event
      Callsites:
        - Src:             'smtp-server-reply.c:194,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:195,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:197,10'
          Dst:             smtp_server_reply_alloc
        - Src:             'smtp-server-reply.c:202,20'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-reply.c:202,20'
          Dst:             p_malloc
        - Src:             'smtp-server-reply.c:203,2'
          Dst:             smtp_server_reply_set_status
        - Src:             'smtp-server-reply.c:204,25'
          Dst:             str_new
        - Src:             'smtp-server-reply.c:206,2'
          Dst:             smtp_server_reply_update_event
    - functionName:    smtp_server_reply_alloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - cmd
        - index
      BBCount:         10
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_i
        - array_idx_clear_i
        - array_idx_modifiable_i
        - array_is_created_i
        - event_create
        - i_panic
        - smtp_server_reply_clear
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:69,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:70,11'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - smtp_server_reply_clear
                - event_create
                - i_panic
            - BranchSide:      'smtp-server-reply.c:75,3'
              BranchSideFuncs:
                - array_create_i
                - array_idx_clear_i
                - array_idx_modifiable_i
                - event_create
        - Branch String:   'smtp-server-reply.c:72,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:72,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:73,27'
              BranchSideFuncs:
                - smtp_server_reply_clear
                - event_create
      Callsites:
        - Src:             'smtp-server-reply.c:69,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-reply.c:70,11'
          Dst:             array_idx_modifiable_i
        - Src:             'smtp-server-reply.c:72,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:73,3'
          Dst:             smtp_server_reply_clear
        - Src:             'smtp-server-reply.c:75,3'
          Dst:             array_create_i
        - Src:             'smtp-server-reply.c:76,3'
          Dst:             array_idx_clear_i
        - Src:             'smtp-server-reply.c:77,11'
          Dst:             array_idx_modifiable_i
        - Src:             'smtp-server-reply.c:79,17'
          Dst:             event_create
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_reply_set_status
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - status
        - enh_code
      BBCount:         28
      ICount:          167
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - null_strcmp
        - p_strdup
        - smtp_server_reply_update_prefix
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:156,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:156,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:156,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:156,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:156,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
        - Branch String:   'smtp-server-reply.c:165,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
        - Branch String:   'smtp-server-reply.c:165,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
        - Branch String:   'smtp-server-reply.c:165,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
                - i_panic
        - Branch String:   'smtp-server-reply.c:165,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:165,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:169,6'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
                - null_strcmp
        - Branch String:   'smtp-server-reply.c:169,39'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:170,18'
              BranchSideFuncs:
                - null_strcmp
                - smtp_server_reply_update_prefix
                - p_strdup
            - BranchSide:      'smtp-server-reply.c:173,34'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
        - Branch String:   'smtp-server-reply.c:169,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:171,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:173,34'
              BranchSideFuncs:
                - smtp_server_reply_update_prefix
                - p_strdup
      Callsites:
        - Src:             'smtp-server-reply.c:156,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:165,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:170,6'
          Dst:             null_strcmp
        - Src:             'smtp-server-reply.c:173,2'
          Dst:             smtp_server_reply_update_prefix
        - Src:             'smtp-server-reply.c:175,34'
          Dst:             p_strdup
    - functionName:    smtp_server_reply_update_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_add_int
        - event_set_append_log_prefix
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:50,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:51,31'
              BranchSideFuncs:
                - t_strdup_printf
                - event_set_append_log_prefix
            - BranchSide:      'smtp-server-reply.c:57,31'
              BranchSideFuncs:
                - t_strdup_printf
                - event_set_append_log_prefix
      Callsites:
        - Src:             'smtp-server-reply.c:47,2'
          Dst:             event_add_int
        - Src:             'smtp-server-reply.c:48,2'
          Dst:             event_add_int
        - Src:             'smtp-server-reply.c:52,4'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-reply.c:51,3'
          Dst:             event_set_append_log_prefix
        - Src:             'smtp-server-reply.c:58,4'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-reply.c:57,3'
          Dst:             event_set_append_log_prefix
    - functionName:    smtp_server_reply_update_prefix
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - status
        - enh_code
      BBCount:         40
      ICount:          294
      EdgeCount:       47
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - p_strdup_printf
        - str_append
        - str_append_data
        - str_c
        - str_free
        - str_len
        - str_new
        - strchr
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:93,23'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:93,27'
              BranchSideFuncs:
                - p_strdup_printf
                - str_len
                - str_new
                - strlen
                - str_c
                - str_len
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:94,32'
              BranchSideFuncs:
                - p_strdup_printf
                - str_len
                - str_new
                - strlen
                - str_c
                - str_len
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:93,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:94,32'
              BranchSideFuncs:
                - p_strdup_printf
                - str_len
                - str_new
                - strlen
                - str_c
                - str_len
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:96,32'
              BranchSideFuncs:
                - p_strdup_printf
                - str_len
                - str_new
                - strlen
                - str_c
                - str_len
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:100,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:100,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:101,12'
              BranchSideFuncs:
                - str_len
                - str_new
                - strlen
                - str_c
                - str_len
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:103,22'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:103,33'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:104,35'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-reply.c:103,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:104,35'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:107,21'
              BranchSideFuncs:
                - str_new
                - strlen
                - str_c
                - str_len
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:113,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:113,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:114,14'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:121,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:121,3'
              BranchSideFuncs:
                - str_append
                - str_append_data
                - str_len
                - strchr
                - str_free
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:121,3'
              BranchSideFuncs:
                - str_append
                - str_append_data
                - str_len
                - strchr
                - str_free
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:121,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:121,3'
              BranchSideFuncs:
                - str_append
                - str_append_data
                - str_len
                - strchr
                - str_free
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:121,3'
              BranchSideFuncs:
                - str_append
                - str_append_data
                - str_len
                - strchr
                - str_free
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:121,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:121,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:122,4'
              BranchSideFuncs:
                - str_append
                - str_append_data
                - str_len
                - strchr
                - i_panic
                - str_free
                - i_panic
        - Branch String:   'smtp-server-reply.c:128,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:128,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:129,15'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - i_panic
                - i_panic
                - str_free
        - Branch String:   'smtp-server-reply.c:132,7'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:133,4'
              BranchSideFuncs:
                - str_free
            - BranchSide:      'smtp-server-reply.c:135,15'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_free
                - i_panic
                - i_panic
      Callsites:
        - Src:             'smtp-server-reply.c:94,16'
          Dst:             p_strdup_printf
        - Src:             'smtp-server-reply.c:96,16'
          Dst:             p_strdup_printf
        - Src:             'smtp-server-reply.c:100,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:103,25'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:107,13'
          Dst:             str_new
        - Src:             'smtp-server-reply.c:109,15'
          Dst:             strlen
        - Src:             'smtp-server-reply.c:110,9'
          Dst:             str_c
        - Src:             'smtp-server-reply.c:111,13'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:113,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:118,31'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:120,7'
          Dst:             strchr
        - Src:             'smtp-server-reply.c:121,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:124,3'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:125,3'
          Dst:             str_append_data
        - Src:             'smtp-server-reply.c:128,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:139,2'
          Dst:             str_free
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    58
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_reply_add_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - e
      BBCount:         15
      ICount:          107
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - smtp_server_reply_get_message
        - smtp_server_reply_is_success
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:674,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:674,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:675,2'
              BranchSideFuncs:
                - smtp_server_reply_is_success
                - smtp_server_reply_get_message
        - Branch String:   'smtp-server-reply.c:676,44'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:677,6'
              BranchSideFuncs:
                - smtp_server_reply_is_success
                - smtp_server_reply_get_message
            - BranchSide:      'smtp-server-reply.c:679,36'
              BranchSideFuncs:
                - smtp_server_reply_is_success
                - smtp_server_reply_get_message
        - Branch String:   'smtp-server-reply.c:676,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:678,3'
              BranchSideFuncs:
                - smtp_server_reply_is_success
                - smtp_server_reply_get_message
            - BranchSide:      'smtp-server-reply.c:679,36'
              BranchSideFuncs:
                - smtp_server_reply_is_success
                - smtp_server_reply_get_message
        - Branch String:   'smtp-server-reply.c:679,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:679,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:680,3'
              BranchSideFuncs:
                - smtp_server_reply_get_message
      Callsites:
        - Src:             'smtp-server-reply.c:674,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:679,7'
          Dst:             smtp_server_reply_is_success
        - Src:             'smtp-server-reply.c:680,23'
          Dst:             smtp_server_reply_get_message
    - functionName:    smtp_server_reply_is_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         7
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:667,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:667,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:667,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:667,2'
          Dst:             i_panic
    - functionName:    smtp_server_reply_get_message
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_write_one_line
        - str_c
        - t_str_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:611,18'
          Dst:             t_str_new
        - Src:             'smtp-server-reply.c:613,2'
          Dst:             smtp_server_reply_write_one_line
        - Src:             'smtp-server-reply.c:614,9'
          Dst:             str_c
    - functionName:    smtp_server_reply_write_one_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - reply
        - str
        - skip_status
      BBCount:         35
      ICount:          232
      EdgeCount:       39
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - str_append_c
        - str_append_data
        - str_c
        - str_len
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:567,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:567,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:568,12'
              BranchSideFuncs:
                - str_len
                - strlen
                - str_c
                - str_len
                - strchr
                - str_append_data
                - str_append_c
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:569,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:569,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:571,22'
              BranchSideFuncs:
                - strlen
                - str_c
                - str_len
                - strchr
                - str_append_data
                - str_append_c
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:575,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:576,3'
              BranchSideFuncs:
                - strchr
                - str_append_data
                - str_append_c
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:581,2'
              BranchSideFuncs:
                - strchr
                - str_append_data
                - str_append_c
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:576,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:576,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:577,15'
              BranchSideFuncs:
                - strchr
                - str_append_data
                - str_append_c
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:583,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:583,3'
              BranchSideFuncs:
                - str_append_data
                - str_append_c
                - strchr
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:583,3'
              BranchSideFuncs:
                - str_append_data
                - str_append_c
                - strchr
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:583,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:583,3'
              BranchSideFuncs:
                - str_append_data
                - str_append_c
                - strchr
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:583,3'
              BranchSideFuncs:
                - str_append_data
                - str_append_c
                - strchr
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:583,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:583,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:584,19'
              BranchSideFuncs:
                - str_append_data
                - str_append_c
                - strchr
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:586,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:586,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:587,15'
              BranchSideFuncs:
                - str_append_c
                - strchr
                - str_append_data
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:590,7'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:591,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:593,15'
              BranchSideFuncs:
                - str_append_c
                - strchr
                - str_append_data
                - i_panic
                - i_panic
      Callsites:
        - Src:             'smtp-server-reply.c:567,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:569,2'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:569,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:571,15'
          Dst:             strlen
        - Src:             'smtp-server-reply.c:572,9'
          Dst:             str_c
        - Src:             'smtp-server-reply.c:573,13'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:576,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:582,7'
          Dst:             strchr
        - Src:             'smtp-server-reply.c:583,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:584,3'
          Dst:             str_append_data
        - Src:             'smtp-server-reply.c:586,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:595,3'
          Dst:             str_append_c
    - functionName:    smtp_server_reply_send_real
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         31
      ICount:          207
      EdgeCount:       35
      CyclomaticComplexity: 6
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - o_stream_get_disconnect_reason
        - o_stream_send
        - smtp_server_connection_handle_output_error
        - smtp_server_reply_get_one_line
        - str_c_modifiable
        - str_data
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:626,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:626,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:627,12'
              BranchSideFuncs:
                - str_len
                - str_c_modifiable
                - str_data
                - str_len
                - o_stream_send
                - event_want_level
                - event_send_abort
                - smtp_server_reply_get_one_line
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_output_error
                - o_stream_get_disconnect_reason
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:628,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:628,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:631,26'
              BranchSideFuncs:
                - str_c_modifiable
                - str_data
                - str_len
                - o_stream_send
                - event_want_level
                - event_send_abort
                - smtp_server_reply_get_one_line
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_output_error
                - o_stream_get_disconnect_reason
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-reply.c:633,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:634,3'
              BranchSideFuncs:
                - str_data
                - str_len
                - o_stream_send
                - event_want_level
                - event_send_abort
                - smtp_server_reply_get_one_line
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_output_error
                - o_stream_get_disconnect_reason
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-reply.c:638,20'
              BranchSideFuncs:
                - str_data
                - str_len
                - o_stream_send
                - event_want_level
                - event_send_abort
                - smtp_server_reply_get_one_line
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_output_error
                - o_stream_get_disconnect_reason
                - e_debug
        - Branch String:   'smtp-server-reply.c:634,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:634,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:635,3'
              BranchSideFuncs:
                - str_data
                - str_len
                - o_stream_send
                - event_want_level
                - event_send_abort
                - smtp_server_reply_get_one_line
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_output_error
                - o_stream_get_disconnect_reason
                - e_debug
        - Branch String:   'smtp-server-reply.c:638,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:639,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_output_error
                - o_stream_get_disconnect_reason
                - e_debug
            - BranchSide:      'smtp-server-reply.c:645,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_reply_get_one_line
                - e_debug
        - Branch String:   'smtp-server-reply.c:639,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:639,3'
              BranchSideFuncs:
                - o_stream_get_disconnect_reason
                - e_debug
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-reply.c:639,3'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-reply.c:645,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:645,2'
              BranchSideFuncs:
                - smtp_server_reply_get_one_line
                - e_debug
            - BranchSide:      'smtp-server-reply.c:645,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-reply.c:626,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:628,2'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:628,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:631,9'
          Dst:             str_c_modifiable
        - Src:             'smtp-server-reply.c:634,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:638,28'
          Dst:             str_data
        - Src:             'smtp-server-reply.c:638,47'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:638,6'
          Dst:             o_stream_send
        - Src:             'smtp-server-reply.c:639,3'
          Dst:             event_want_level
        - Src:             'smtp-server-reply.c:639,3'
          Dst:             o_stream_get_disconnect_reason
        - Src:             'smtp-server-reply.c:639,3'
          Dst:             e_debug
        - Src:             'smtp-server-reply.c:639,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-reply.c:641,3'
          Dst:             smtp_server_connection_handle_output_error
        - Src:             'smtp-server-reply.c:645,2'
          Dst:             event_want_level
        - Src:             'smtp-server-reply.c:645,2'
          Dst:             smtp_server_reply_get_one_line
        - Src:             'smtp-server-reply.c:645,2'
          Dst:             e_debug
        - Src:             'smtp-server-reply.c:645,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_reply_get_one_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_write_one_line
        - str_c
        - t_str_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:602,18'
          Dst:             t_str_new
        - Src:             'smtp-server-reply.c:604,2'
          Dst:             smtp_server_reply_write_one_line
        - Src:             'smtp-server-reply.c:605,9'
          Dst:             str_c
    - functionName:    smtp_server_reply_send
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 663
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         12
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_server_reply_send_real
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:654,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:655,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:657,2'
              BranchSideFuncs:
                - t_push
                - smtp_server_reply_send_real
                - t_pop
                - i_panic
        - Branch String:   'smtp-server-reply.c:659,4'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:659,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:659,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:657,2'
          Dst:             t_push
        - Src:             'smtp-server-reply.c:658,9'
          Dst:             smtp_server_reply_send_real
        - Src:             'smtp-server-reply.c:659,4'
          Dst:             t_pop
        - Src:             'smtp-server-reply.c:659,4'
          Dst:             i_panic
    - functionName:    smtp_server_reply_quit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_add_text
        - smtp_server_reply_create
        - smtp_server_reply_submit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:554,10'
          Dst:             smtp_server_reply_create
        - Src:             'smtp-server-reply.c:555,2'
          Dst:             smtp_server_reply_add_text
        - Src:             'smtp-server-reply.c:556,2'
          Dst:             smtp_server_reply_submit
    - functionName:    smtp_server_reply_add_text
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - text
      BBCount:         26
      ICount:          160
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - str_append
        - str_append_data
        - str_len
        - strchr
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:278,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:278,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:280,7'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
                - str_append_data
                - str_append
        - Branch String:   'smtp-server-reply.c:280,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:281,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:283,2'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
                - str_append_data
                - str_append
        - Branch String:   'smtp-server-reply.c:290,7'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:291,15'
              BranchSideFuncs:
                - str_append
                - str_append
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append_data
            - BranchSide:      'smtp-server-reply.c:294,8'
              BranchSideFuncs:
                - str_append_data
                - str_append
                - str_len
                - strchr
                - str_append
                - str_append
                - str_append_data
        - Branch String:   'smtp-server-reply.c:294,17'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:294,22'
              BranchSideFuncs:
                - str_append_data
                - str_append
                - str_len
                - strchr
                - str_append
                - str_append
                - str_append_data
            - BranchSide:      'smtp-server-reply.c:297,21'
              BranchSideFuncs:
                - str_append_data
                - str_append
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
        - Branch String:   'smtp-server-reply.c:294,8'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:295,21'
              BranchSideFuncs:
                - str_append_data
                - str_append
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
            - BranchSide:      'smtp-server-reply.c:297,21'
              BranchSideFuncs:
                - str_append_data
                - str_append
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
        - Branch String:   'smtp-server-reply.c:301,24'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:301,28'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
                - str_append_data
                - str_append
            - BranchSide:      'smtp-server-reply.c:301,2'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
                - str_append_data
                - str_append
        - Branch String:   'smtp-server-reply.c:301,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:286,39'
              BranchSideFuncs:
                - str_len
                - strchr
                - str_append
                - str_append_data
                - str_append
                - str_append_data
                - str_append
            - BranchSide:      'smtp-server-reply.c:301,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:278,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:286,31'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:288,7'
          Dst:             strchr
        - Src:             'smtp-server-reply.c:289,3'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:291,4'
          Dst:             str_append
        - Src:             'smtp-server-reply.c:295,5'
          Dst:             str_append_data
        - Src:             'smtp-server-reply.c:297,5'
          Dst:             str_append_data
        - Src:             'smtp-server-reply.c:300,3'
          Dst:             str_append
    - functionName:    smtp_server_reply_submit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         20
      ICount:          117
      EdgeCount:       21
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_command_submit_reply
        - str_len
      functionUses:    8
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:399,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:399,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:400,2'
              BranchSideFuncs:
                - str_len
                - event_want_level
                - event_send_abort
                - smtp_server_command_submit_reply
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:400,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:400,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:401,2'
              BranchSideFuncs:
                - str_len
                - event_want_level
                - event_send_abort
                - smtp_server_command_submit_reply
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-reply.c:401,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:401,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:402,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_submit_reply
                - e_debug
        - Branch String:   'smtp-server-reply.c:402,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:402,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_submit_reply
            - BranchSide:      'smtp-server-reply.c:402,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_submit_reply
      Callsites:
        - Src:             'smtp-server-reply.c:399,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:400,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:401,2'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:401,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:402,2'
          Dst:             event_want_level
        - Src:             'smtp-server-reply.c:402,2'
          Dst:             e_debug
        - Src:             'smtp-server-reply.c:402,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-reply.c:406,2'
          Dst:             smtp_server_command_submit_reply
    - functionName:    smtp_server_reply_early
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
        - status
        - enh_code
        - fmt
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_allv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:545,2'
          Dst:             smtp_server_reply_allv
    - functionName:    smtp_server_reply_allv
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
        - status
        - enh_code
        - fmt
        - args
      BBCount:         21
      ICount:          153
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - array_idx_modifiable_i
        - array_is_created_i
        - i_panic
        - smtp_server_reply_add_text
        - smtp_server_reply_create_index
        - smtp_server_reply_submit
        - smtp_server_reply_submit_duplicate
        - t_strdup_vprintf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:501,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:502,3'
              BranchSideFuncs:
                - t_strdup_vprintf
                - smtp_server_reply_create_index
                - smtp_server_reply_add_text
                - smtp_server_reply_submit
                - smtp_server_reply_submit_duplicate
                - i_panic
                - array_idx_modifiable_i
            - BranchSide:      'smtp-server-reply.c:510,11'
              BranchSideFuncs:
                - t_strdup_vprintf
                - smtp_server_reply_create_index
                - smtp_server_reply_add_text
                - smtp_server_reply_submit
                - smtp_server_reply_submit_duplicate
        - Branch String:   'smtp-server-reply.c:502,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:504,5'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - t_strdup_vprintf
                - smtp_server_reply_create_index
                - smtp_server_reply_add_text
                - smtp_server_reply_submit
                - smtp_server_reply_submit_duplicate
                - i_panic
            - BranchSide:      'smtp-server-reply.c:508,3'
              BranchSideFuncs:
                - t_strdup_vprintf
                - smtp_server_reply_create_index
                - smtp_server_reply_add_text
                - smtp_server_reply_submit
                - smtp_server_reply_submit_duplicate
                - i_panic
        - Branch String:   'smtp-server-reply.c:505,8'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:506,5'
              BranchSideFuncs:
                - t_strdup_vprintf
                - smtp_server_reply_create_index
                - smtp_server_reply_add_text
                - smtp_server_reply_submit
                - smtp_server_reply_submit_duplicate
                - i_panic
                - array_idx_modifiable_i
            - BranchSide:      'smtp-server-reply.c:507,3'
              BranchSideFuncs:
                - t_strdup_vprintf
                - smtp_server_reply_create_index
                - smtp_server_reply_add_text
                - smtp_server_reply_submit
                - smtp_server_reply_submit_duplicate
                - i_panic
                - array_idx_modifiable_i
        - Branch String:   'smtp-server-reply.c:508,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:508,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:509,2'
              BranchSideFuncs:
                - t_strdup_vprintf
                - smtp_server_reply_create_index
                - smtp_server_reply_add_text
                - smtp_server_reply_submit
                - smtp_server_reply_submit_duplicate
        - Branch String:   'smtp-server-reply.c:521,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:522,38'
              BranchSideFuncs:
                - smtp_server_reply_submit_duplicate
            - BranchSide:      'smtp-server-reply.c:523,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:501,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-reply.c:504,5'
          Dst:             array_idx_modifiable_i
        - Src:             'smtp-server-reply.c:508,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:513,9'
          Dst:             t_strdup_vprintf
        - Src:             'smtp-server-reply.c:516,10'
          Dst:             smtp_server_reply_create_index
        - Src:             'smtp-server-reply.c:517,2'
          Dst:             smtp_server_reply_add_text
        - Src:             'smtp-server-reply.c:518,2'
          Dst:             smtp_server_reply_submit
        - Src:             'smtp-server-reply.c:522,3'
          Dst:             smtp_server_reply_submit_duplicate
    - functionName:    smtp_server_reply_submit_duplicate
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - _cmd
        - index
        - from_index
      BBCount:         27
      ICount:          173
      EdgeCount:       27
      CyclomaticComplexity: 2
      functionsReached:
        - array_idx_modifiable_i
        - array_is_created_i
        - i_panic
        - smtp_server_reply_alloc
        - smtp_server_reply_submit
        - smtp_server_reply_update_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:416,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:416,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:417,2'
              BranchSideFuncs:
                - array_is_created_i.98
                - array_idx_modifiable_i
                - smtp_server_reply_alloc
                - smtp_server_reply_update_event
                - smtp_server_reply_submit
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:417,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:417,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:418,2'
              BranchSideFuncs:
                - array_is_created_i.98
                - array_idx_modifiable_i
                - smtp_server_reply_alloc
                - smtp_server_reply_update_event
                - smtp_server_reply_submit
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:418,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:418,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:419,2'
              BranchSideFuncs:
                - array_is_created_i.98
                - array_idx_modifiable_i
                - smtp_server_reply_alloc
                - smtp_server_reply_update_event
                - smtp_server_reply_submit
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:419,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:419,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:421,15'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - smtp_server_reply_alloc
                - smtp_server_reply_update_event
                - smtp_server_reply_submit
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:422,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:422,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:423,2'
              BranchSideFuncs:
                - smtp_server_reply_alloc
                - smtp_server_reply_update_event
                - smtp_server_reply_submit
                - i_panic
        - Branch String:   'smtp-server-reply.c:423,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:423,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:423,2'
              BranchSideFuncs:
                - smtp_server_reply_alloc
                - smtp_server_reply_update_event
                - smtp_server_reply_submit
      Callsites:
        - Src:             'smtp-server-reply.c:416,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:417,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:418,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:419,2'
          Dst:             array_is_created_i
        - Src:             'smtp-server-reply.c:419,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:421,15'
          Dst:             array_idx_modifiable_i
        - Src:             'smtp-server-reply.c:422,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:423,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:425,10'
          Dst:             smtp_server_reply_alloc
        - Src:             'smtp-server-reply.c:429,2'
          Dst:             smtp_server_reply_update_event
        - Src:             'smtp-server-reply.c:431,2'
          Dst:             smtp_server_reply_submit
    - functionName:    smtp_server_reply_all
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
        - status
        - enh_code
        - fmt
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_allv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:532,2'
          Dst:             smtp_server_reply_allv
    - functionName:    smtp_server_reply_forward
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
        - from
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_reply_create_forward
        - smtp_server_reply_submit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:484,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:484,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:484,2'
              BranchSideFuncs:
                - smtp_server_reply_create_forward
                - smtp_server_reply_submit
      Callsites:
        - Src:             'smtp-server-reply.c:484,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:487,3'
          Dst:             smtp_server_reply_create_forward
        - Src:             'smtp-server-reply.c:486,2'
          Dst:             smtp_server_reply_submit
    - functionName:    smtp_server_reply_create_forward
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - index
        - from
      BBCount:         21
      ICount:          183
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - smtp_reply_get_enh_code
        - smtp_reply_write
        - smtp_server_reply_create_index
        - str_append_c
        - str_c_modifiable
        - str_len
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:232,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:232,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:233,12'
              BranchSideFuncs:
                - str_c_modifiable
                - str_len
                - str_len
                - str_append_c
                - i_panic
        - Branch String:   'smtp-server-reply.c:238,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:239,7'
              BranchSideFuncs:
                - str_len
                - str_len
                - str_append_c
                - i_panic
            - BranchSide:      'smtp-server-reply.c:247,7'
              BranchSideFuncs:
                - str_len
                - str_append_c
                - i_panic
        - Branch String:   'smtp-server-reply.c:239,7'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:240,32'
              BranchSideFuncs:
                - str_len
                - str_len
                - str_append_c
                - i_panic
            - BranchSide:      'smtp-server-reply.c:243,2'
              BranchSideFuncs:
                - str_len
                - str_len
                - str_append_c
                - i_panic
        - Branch String:   'smtp-server-reply.c:247,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:248,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:251,3'
              BranchSideFuncs:
                - str_append_c
        - Branch String:   'smtp-server-reply.c:248,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:248,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:249,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:229,17'
          Dst:             smtp_reply_get_enh_code
        - Src:             'smtp-server-reply.c:228,10'
          Dst:             smtp_server_reply_create_index
        - Src:             'smtp-server-reply.c:230,2'
          Dst:             smtp_reply_write
        - Src:             'smtp-server-reply.c:232,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:234,9'
          Dst:             str_c_modifiable
        - Src:             'smtp-server-reply.c:238,18'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:247,40'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:248,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:251,3'
          Dst:             str_append_c
    - functionName:    smtp_server_reply_index_forward
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - index
        - from
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_create_forward
        - smtp_server_reply_submit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:476,3'
          Dst:             smtp_server_reply_create_forward
        - Src:             'smtp-server-reply.c:475,2'
          Dst:             smtp_server_reply_submit
    - functionName:    smtp_server_reply_index
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
        - index
        - status
        - enh_code
        - fmt
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_indexv
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:467,2'
          Dst:             smtp_server_reply_indexv
    - functionName:    smtp_server_reply_indexv
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
        - index
        - status
        - enh_code
        - fmt
        - args
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_reply_add_text
        - smtp_server_reply_create_index
        - smtp_server_reply_submit
        - t_strdup_vprintf
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-reply.c:442,10'
          Dst:             smtp_server_reply_create_index
        - Src:             'smtp-server-reply.c:443,36'
          Dst:             t_strdup_vprintf
        - Src:             'smtp-server-reply.c:443,2'
          Dst:             smtp_server_reply_add_text
        - Src:             'smtp-server-reply.c:444,2'
          Dst:             smtp_server_reply_submit
    - functionName:    smtp_server_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
        - status
        - enh_code
        - fmt
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_reply_indexv
      functionUses:    58
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:453,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:453,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:453,2'
              BranchSideFuncs:
                - smtp_server_reply_indexv
      Callsites:
        - Src:             'smtp-server-reply.c:453,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:456,2'
          Dst:             smtp_server_reply_indexv
    - functionName:    str_replace
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - len
        - cstr
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_replace
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:83,38'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:83,2'
          Dst:             buffer_replace
    - functionName:    smtp_server_reply_replace_path
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - reply
        - path
        - add
      BBCount:         31
      ICount:          214
      EdgeCount:       35
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - smtp_address_encode
        - smtp_address_encode_path
        - smtp_server_reply_get_path_len
        - str_insert
        - str_replace
        - strlen
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:372,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:372,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:373,2'
              BranchSideFuncs:
                - strlen
                - smtp_server_reply_get_path_len
                - smtp_address_encode
                - t_strdup_printf
                - str_insert
                - strlen
                - smtp_address_encode_path
                - str_replace
                - strlen
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:373,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:373,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:374,2'
              BranchSideFuncs:
                - strlen
                - smtp_server_reply_get_path_len
                - smtp_address_encode
                - t_strdup_printf
                - str_insert
                - strlen
                - smtp_address_encode_path
                - str_replace
                - strlen
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:374,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:374,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:376,22'
              BranchSideFuncs:
                - strlen
                - smtp_server_reply_get_path_len
                - smtp_address_encode
                - t_strdup_printf
                - str_insert
                - strlen
                - smtp_address_encode_path
                - str_replace
                - strlen
                - i_panic
        - Branch String:   'smtp-server-reply.c:379,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:380,40'
              BranchSideFuncs:
                - smtp_address_encode_path
                - str_replace
                - strlen
                - i_panic
            - BranchSide:      'smtp-server-reply.c:388,13'
              BranchSideFuncs:
                - smtp_address_encode
                - t_strdup_printf
                - str_insert
                - strlen
        - Branch String:   'smtp-server-reply.c:383,7'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:384,4'
              BranchSideFuncs:
                - strlen
                - i_panic
            - BranchSide:      'smtp-server-reply.c:388,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-reply.c:384,4'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:384,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:385,33'
              BranchSideFuncs:
                - strlen
        - Branch String:   'smtp-server-reply.c:392,7'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:393,40'
              BranchSideFuncs:
                - strlen
            - BranchSide:      'smtp-server-reply.c:394,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:372,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:373,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:374,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:376,15'
          Dst:             strlen
        - Src:             'smtp-server-reply.c:377,13'
          Dst:             smtp_server_reply_get_path_len
        - Src:             'smtp-server-reply.c:380,15'
          Dst:             smtp_address_encode_path
        - Src:             'smtp-server-reply.c:381,3'
          Dst:             str_replace
        - Src:             'smtp-server-reply.c:384,4'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:386,33'
          Dst:             strlen
        - Src:             'smtp-server-reply.c:390,13'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-reply.c:389,15'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-reply.c:391,3'
          Dst:             str_insert
        - Src:             'smtp-server-reply.c:393,33'
          Dst:             strlen
    - functionName:    smtp_server_reply_get_path_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         43
      ICount:          259
      EdgeCount:       50
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - str_c
        - str_len
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:311,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:311,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:313,20'
              BranchSideFuncs:
                - strchr
                - strchr
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:314,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:315,14'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-reply.c:318,3'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:318,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:318,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:319,3'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:319,3'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:319,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:320,14'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:323,29'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:323,32'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:324,12'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-reply.c:323,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:324,12'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:326,29'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:329,24'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:329,27'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:330,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-reply.c:329,7'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:330,13'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:332,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:332,4'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:332,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:333,12'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-reply.c:340,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:340,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:340,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-reply.c:306,22'
          Dst:             strlen
        - Src:             'smtp-server-reply.c:307,20'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:308,21'
          Dst:             str_c
        - Src:             'smtp-server-reply.c:311,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:313,13'
          Dst:             strchr
        - Src:             'smtp-server-reply.c:318,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:319,3'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:328,14'
          Dst:             strchr
        - Src:             'smtp-server-reply.c:332,4'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:340,2'
          Dst:             i_panic
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - cstr
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:72,32'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:72,2'
          Dst:             buffer_insert
    - functionName:    smtp_server_reply_prepend_text
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - text_prefix
      BBCount:         25
      ICount:          176
      EdgeCount:       27
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_reply_get_path_len
        - str_c
        - str_insert
        - str_len
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:350,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:350,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:351,2'
              BranchSideFuncs:
                - strlen
                - smtp_server_reply_get_path_len
                - str_insert
                - strlen
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:351,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:351,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:352,2'
              BranchSideFuncs:
                - strlen
                - smtp_server_reply_get_path_len
                - str_insert
                - strlen
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-reply.c:352,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:352,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:354,18'
              BranchSideFuncs:
                - strlen
                - smtp_server_reply_get_path_len
                - str_insert
                - strlen
                - i_panic
        - Branch String:   'smtp-server-reply.c:356,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:356,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-reply.c:357,6'
              BranchSideFuncs:
                - str_insert
                - strlen
        - Branch String:   'smtp-server-reply.c:357,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:358,9'
              BranchSideFuncs:
                - str_insert
                - strlen
            - BranchSide:      'smtp-server-reply.c:360,13'
              BranchSideFuncs:
                - str_insert
                - strlen
        - Branch String:   'smtp-server-reply.c:362,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:362,6'
              BranchSideFuncs:
                - strlen
            - BranchSide:      'smtp-server-reply.c:363,39'
              BranchSideFuncs:
                - strlen
      Callsites:
        - Src:             'smtp-server-reply.c:347,21'
          Dst:             str_c
        - Src:             'smtp-server-reply.c:348,16'
          Dst:             str_len
        - Src:             'smtp-server-reply.c:350,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:351,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:352,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:354,11'
          Dst:             strlen
        - Src:             'smtp-server-reply.c:355,3'
          Dst:             smtp_server_reply_get_path_len
        - Src:             'smtp-server-reply.c:356,2'
          Dst:             i_panic
        - Src:             'smtp-server-reply.c:360,2'
          Dst:             str_insert
        - Src:             'smtp-server-reply.c:363,32'
          Dst:             strlen
    - functionName:    smtp_server_reply_free
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_idx_modifiable_i
        - array_is_created_i
        - smtp_server_reply_destroy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:263,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:264,3'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - smtp_server_reply_destroy
            - BranchSide:      'smtp-server-reply.c:266,9'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - smtp_server_reply_destroy
        - Branch String:   'smtp-server-reply.c:266,2'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:266,2'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - smtp_server_reply_destroy
            - BranchSide:      'smtp-server-reply.c:268,4'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - smtp_server_reply_destroy
      Callsites:
        - Src:             'smtp-server-reply.c:263,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-reply.c:268,4'
          Dst:             array_idx_modifiable_i
        - Src:             'smtp-server-reply.c:269,3'
          Dst:             smtp_server_reply_destroy
    - functionName:    smtp_server_reply_get_status
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - enh_code_r
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-reply.c:181,6'
          Branch Sides:
            - BranchSide:      'smtp-server-reply.c:181,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-reply.c:182,17'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_command_is_complete
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-server-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_server_connection_pending_command_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   './smtp-server-private.h:277,29'
          Branch Sides:
            - BranchSide:      './smtp-server-private.h:277,29'
              BranchSideFuncs: []
            - BranchSide:      './smtp-server-private.h:277,33'
              BranchSideFuncs:
                - smtp_server_connection_pending_command_data
        - Branch String:   './smtp-server-private.h:277,52'
          Branch Sides:
            - BranchSide:      './smtp-server-private.h:277,52'
              BranchSideFuncs: []
            - BranchSide:      './smtp-server-private.h:277,55'
              BranchSideFuncs:
                - smtp_server_connection_pending_command_data
        - Branch String:   './smtp-server-private.h:277,72'
          Branch Sides:
            - BranchSide:      './smtp-server-private.h:277,72'
              BranchSideFuncs: []
            - BranchSide:      './smtp-server-private.h:278,48'
              BranchSideFuncs:
                - smtp_server_connection_pending_command_data
      Callsites:
        - Src:             './smtp-server-private.h:278,4'
          Dst:             smtp_server_connection_pending_command_data
    - functionName:    smtp_server_command_replied
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
      BBCount:         19
      ICount:          101
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_command_call_hooks
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:510,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:511,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - e_debug
            - BranchSide:      'smtp-server-command.c:517,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - smtp_server_command_call_hooks
                - e_debug
        - Branch String:   'smtp-server-command.c:511,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:511,3'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_call_hooks
            - BranchSide:      'smtp-server-command.c:511,3'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_call_hooks
        - Branch String:   'smtp-server-command.c:517,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:517,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_call_hooks
                - smtp_server_command_call_hooks
            - BranchSide:      'smtp-server-command.c:517,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_call_hooks
                - smtp_server_command_call_hooks
        - Branch String:   'smtp-server-command.c:520,54'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:519,2'
              BranchSideFuncs:
                - smtp_server_command_call_hooks
            - BranchSide:      'smtp-server-command.c:522,4'
              BranchSideFuncs:
                - smtp_server_command_call_hooks
      Callsites:
        - Src:             'smtp-server-command.c:511,3'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:511,3'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:511,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:513,10'
          Dst:             smtp_server_command_call_hooks
        - Src:             'smtp-server-command.c:517,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:517,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:517,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:519,10'
          Dst:             smtp_server_command_call_hooks
        - Src:             'smtp-server-command.c:521,3'
          Dst:             smtp_server_command_call_hooks
    - functionName:    smtp_server_command_call_hooks
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - _cmd
        - type
        - remove
      BBCount:         37
      ICount:          213
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - smtp_server_command_ref
        - smtp_server_command_unref
      functionUses:    6
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:421,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:422,7'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:427,9'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:422,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:423,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:424,27'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:428,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:429,48'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:442,6'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:431,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:432,8'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:439,10'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:432,8'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:433,5'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:436,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:433,5'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:433,5'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:433,5'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:433,5'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:433,5'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:433,5'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:442,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:443,8'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:448,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:443,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:444,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:447,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:424,3'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-command.c:443,8'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_command_ref
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:285,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:286,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:287,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_command_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
      BBCount:         41
      ICount:          292
      EdgeCount:       50
      CyclomaticComplexity: 11
      functionsReached:
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_unref
        - event_want_level
        - i_panic
        - i_unreached
        - pool_unref
        - smtp_server_command_call_hooks
        - smtp_server_command_pipeline_unblock
        - smtp_server_reply_free
      functionUses:    31
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:297,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:298,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:300,2'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
                - e_debug
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-command.c:300,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:300,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:301,8'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
                - e_debug
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-command.c:301,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:302,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:303,2'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
                - e_debug
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-command.c:305,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:306,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
                - e_debug
            - BranchSide:      'smtp-server-command.c:309,4'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
                - e_debug
        - Branch String:   'smtp-server-command.c:306,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:306,3'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
            - BranchSide:      'smtp-server-command.c:306,3'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
        - Branch String:   'smtp-server-command.c:314,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:314,3'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
            - BranchSide:      'smtp-server-command.c:314,3'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
        - Branch String:   'smtp-server-command.c:317,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:317,3'
              BranchSideFuncs:
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
            - BranchSide:      'smtp-server-command.c:317,3'
              BranchSideFuncs:
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
        - Branch String:   'smtp-server-command.c:317,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:317,3'
              BranchSideFuncs:
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
            - BranchSide:      'smtp-server-command.c:317,3'
              BranchSideFuncs:
                - smtp_server_command_call_hooks
                - i_unreached
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
        - Branch String:   'smtp-server-command.c:323,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:325,3'
              BranchSideFuncs:
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
            - BranchSide:      'smtp-server-command.c:327,40'
              BranchSideFuncs:
                - smtp_server_command_pipeline_unblock
                - smtp_server_reply_free
                - event_unref
                - pool_unref
      Callsites:
        - Src:             'smtp-server-command.c:300,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:306,3'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:306,3'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:306,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:309,4'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-command.c:314,3'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:314,3'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:314,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:323,7'
          Dst:             smtp_server_command_call_hooks
        - Src:             'smtp-server-command.c:325,3'
          Dst:             i_unreached
        - Src:             'smtp-server-command.c:327,2'
          Dst:             smtp_server_command_pipeline_unblock
        - Src:             'smtp-server-command.c:329,2'
          Dst:             smtp_server_reply_free
        - Src:             'smtp-server-command.c:330,2'
          Dst:             event_unref
        - Src:             'smtp-server-command.c:331,2'
          Dst:             pool_unref
    - functionName:    smtp_server_command_pipeline_unblock
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_connection_input_unlock
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:890,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:891,3'
              BranchSideFuncs:
                - smtp_server_connection_input_unlock
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-command.c:893,2'
              BranchSideFuncs:
                - smtp_server_connection_input_unlock
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-command.c:896,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:896,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-command.c:896,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-command.c:894,2'
          Dst:             smtp_server_connection_input_unlock
        - Src:             'smtp-server-command.c:896,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:896,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:896,2'
          Dst:             event_send_abort
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_command_bsearch
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - cmd
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-command.c:74,9'
          Dst:             strcasecmp
    - functionName:    smtp_server_command_cmp
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - c1
        - c2
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-command.c:67,9'
          Dst:             strcasecmp
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:244,2'
          Dst:             buffer_delete
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:253,13'
          Dst:             array_count_i
    - functionName:    smtp_server_command_pipeline_block
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         8
      ICount:          60
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_connection_input_lock
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:879,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:879,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-command.c:879,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_input_lock
      Callsites:
        - Src:             'smtp-server-command.c:879,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:879,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:879,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:882,2'
          Dst:             smtp_server_connection_input_lock
    - functionName:    smtp_server_command_input_capture
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 872
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - callback
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_input_capture
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-command.c:869,2'
          Dst:             smtp_server_connection_input_capture
    - functionName:    smtp_server_command_input_lock
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 841
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_input_halt
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-command.c:846,2'
          Dst:             smtp_server_connection_input_halt
    - functionName:    smtp_server_command_input_unlock
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_connection_input_halt
        - smtp_server_connection_input_resume
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:855,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:855,6'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - smtp_server_connection_input_resume
            - BranchSide:      'smtp-server-command.c:856,3'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - smtp_server_connection_input_resume
      Callsites:
        - Src:             'smtp-server-command.c:857,3'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-command.c:859,2'
          Dst:             smtp_server_connection_input_resume
    - functionName:    smtp_server_command_finished
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         53
      ICount:          326
      EdgeCount:       63
      CyclomaticComplexity: 12
      functionsReached:
        - array_idx_modifiable_i
        - array_is_created_i
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_command_input_unlock
        - smtp_server_command_pipeline_unblock
        - smtp_server_command_unref
        - smtp_server_connection_close
        - smtp_server_connection_trigger_output
        - smtp_server_reply_add_to_event
        - smtp_server_reply_get_one_line
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:767,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:767,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:768,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - array_idx_modifiable_i
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-command.c:770,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:770,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - array_idx_modifiable_i
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
                - e_debug
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-command.c:770,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - array_idx_modifiable_i
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-command.c:770,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:770,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - array_idx_modifiable_i
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
                - e_debug
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-command.c:770,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - array_idx_modifiable_i
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-command.c:775,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:775,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:776,10'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-command.c:777,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:777,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:780,3'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
                - e_debug
        - Branch String:   'smtp-server-command.c:783,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:783,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
            - BranchSide:      'smtp-server-command.c:783,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
        - Branch String:   'smtp-server-command.c:785,36'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:785,39'
              BranchSideFuncs:
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
            - BranchSide:      'smtp-server-command.c:786,3'
              BranchSideFuncs:
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
        - Branch String:   'smtp-server-command.c:785,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:786,3'
              BranchSideFuncs:
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - i_panic
            - BranchSide:      'smtp-server-command.c:797,6'
              BranchSideFuncs:
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_input_unlock
        - Branch String:   'smtp-server-command.c:786,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:786,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:787,7'
              BranchSideFuncs:
                - smtp_server_connection_close
                - smtp_server_command_unref
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
        - Branch String:   'smtp-server-command.c:787,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:790,36'
              BranchSideFuncs:
                - smtp_server_reply_get_one_line
                - t_strdup_printf
                - smtp_server_connection_close
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:792,4'
              BranchSideFuncs:
                - smtp_server_connection_close
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:797,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:798,37'
              BranchSideFuncs:
                - smtp_server_command_input_unlock
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
            - BranchSide:      'smtp-server-command.c:799,6'
              BranchSideFuncs:
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
                - smtp_server_command_pipeline_unblock
        - Branch String:   'smtp-server-command.c:799,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:800,41'
              BranchSideFuncs:
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
            - BranchSide:      'smtp-server-command.c:802,2'
              BranchSideFuncs:
                - smtp_server_command_unref
                - smtp_server_connection_trigger_output
      Callsites:
        - Src:             'smtp-server-command.c:767,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:775,2'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:775,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:776,10'
          Dst:             array_idx_modifiable_i
        - Src:             'smtp-server-command.c:777,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:780,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-command.c:782,2'
          Dst:             smtp_server_reply_add_to_event
        - Src:             'smtp-server-command.c:783,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:783,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:783,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:786,3'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:790,5'
          Dst:             smtp_server_reply_get_one_line
        - Src:             'smtp-server-command.c:788,40'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-command.c:788,4'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-command.c:792,4'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-command.c:794,3'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-command.c:798,3'
          Dst:             smtp_server_command_input_unlock
        - Src:             'smtp-server-command.c:800,3'
          Dst:             smtp_server_command_pipeline_unblock
        - Src:             'smtp-server-command.c:802,2'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-command.c:803,2'
          Dst:             smtp_server_connection_trigger_output
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_command_send_more_replies
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         19
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - array_idx_modifiable_i
        - i_panic
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_reply_send
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:713,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:716,11'
              BranchSideFuncs:
                - array_idx_modifiable_i
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply_send
            - BranchSide:      'smtp-server-command.c:729,7'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:718,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:719,4'
              BranchSideFuncs:
                - smtp_server_reply_send
                - smtp_server_command_unref
                - array_idx_modifiable_i
                - i_panic
            - BranchSide:      'smtp-server-command.c:723,30'
              BranchSideFuncs:
                - smtp_server_reply_send
                - smtp_server_command_unref
                - array_idx_modifiable_i
                - i_panic
        - Branch String:   'smtp-server-command.c:719,4'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:719,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:720,8'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:723,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:724,8'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:727,2'
              BranchSideFuncs:
                - smtp_server_command_unref
                - array_idx_modifiable_i
                - i_panic
                - smtp_server_reply_send
        - Branch String:   'smtp-server-command.c:729,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:730,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:731,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:709,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-command.c:716,11'
          Dst:             array_idx_modifiable_i
        - Src:             'smtp-server-command.c:719,4'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:723,7'
          Dst:             smtp_server_reply_send
        - Src:             'smtp-server-command.c:729,7'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_command_send_replies
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         21
      ICount:          106
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - array_is_created_i
        - i_panic
        - smtp_server_command_completed
        - smtp_server_command_finished
        - smtp_server_command_next_to_reply
        - smtp_server_command_send_more_replies
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:738,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:739,3'
              BranchSideFuncs:
                - smtp_server_command_completed
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
                - i_panic
                - array_is_created_i.316
            - BranchSide:      'smtp-server-command.c:740,6'
              BranchSideFuncs:
                - smtp_server_command_completed
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
                - i_panic
                - array_is_created_i.316
        - Branch String:   'smtp-server-command.c:740,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:741,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:743,2'
              BranchSideFuncs:
                - smtp_server_command_completed
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
                - i_panic
                - array_is_created_i.316
        - Branch String:   'smtp-server-command.c:743,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:743,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_command_completed
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
                - i_panic
            - BranchSide:      'smtp-server-command.c:743,2'
              BranchSideFuncs:
                - smtp_server_command_completed
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
                - i_panic
        - Branch String:   'smtp-server-command.c:743,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:743,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:746,7'
              BranchSideFuncs:
                - smtp_server_command_completed
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
        - Branch String:   'smtp-server-command.c:746,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:747,3'
              BranchSideFuncs:
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
            - BranchSide:      'smtp-server-command.c:750,46'
              BranchSideFuncs:
                - smtp_server_command_send_more_replies
                - smtp_server_command_finished
        - Branch String:   'smtp-server-command.c:751,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:752,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:753,6'
              BranchSideFuncs:
                - smtp_server_command_finished
        - Branch String:   'smtp-server-command.c:753,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:754,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:758,31'
              BranchSideFuncs:
                - smtp_server_command_finished
      Callsites:
        - Src:             'smtp-server-command.c:738,7'
          Dst:             smtp_server_command_next_to_reply
        - Src:             'smtp-server-command.c:743,2'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:743,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:746,7'
          Dst:             smtp_server_command_completed
        - Src:             'smtp-server-command.c:750,8'
          Dst:             smtp_server_command_send_more_replies
        - Src:             'smtp-server-command.c:758,2'
          Dst:             smtp_server_command_finished
    - functionName:    smtp_server_command_next_to_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
      BBCount:         11
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_command_call_hooks
        - smtp_server_command_remove_hooks
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:488,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:488,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_call_hooks
                - smtp_server_command_remove_hooks
            - BranchSide:      'smtp-server-command.c:488,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_call_hooks
                - smtp_server_command_remove_hooks
        - Branch String:   'smtp-server-command.c:490,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:492,3'
              BranchSideFuncs:
                - smtp_server_command_remove_hooks
            - BranchSide:      'smtp-server-command.c:494,35'
              BranchSideFuncs:
                - smtp_server_command_remove_hooks
      Callsites:
        - Src:             'smtp-server-command.c:488,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:488,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:488,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:490,7'
          Dst:             smtp_server_command_call_hooks
        - Src:             'smtp-server-command.c:494,2'
          Dst:             smtp_server_command_remove_hooks
    - functionName:    smtp_server_command_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 539
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
      BBCount:         14
      ICount:          81
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_command_call_hooks
        - smtp_server_command_pipeline_unblock
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:529,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:530,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:532,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_call_hooks
                - smtp_server_command_pipeline_unblock
                - e_debug
        - Branch String:   'smtp-server-command.c:532,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:532,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_call_hooks
                - smtp_server_command_pipeline_unblock
            - BranchSide:      'smtp-server-command.c:532,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_call_hooks
                - smtp_server_command_pipeline_unblock
        - Branch String:   'smtp-server-command.c:534,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:535,41'
              BranchSideFuncs:
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_call_hooks
            - BranchSide:      'smtp-server-command.c:538,3'
              BranchSideFuncs:
                - smtp_server_command_call_hooks
      Callsites:
        - Src:             'smtp-server-command.c:532,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:532,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:532,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:535,3'
          Dst:             smtp_server_command_pipeline_unblock
        - Src:             'smtp-server-command.c:537,9'
          Dst:             smtp_server_command_call_hooks
    - functionName:    smtp_server_command_remove_hooks
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - cmd
        - type
      BBCount:         21
      ICount:          131
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:457,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:458,48'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:467,1'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:460,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:461,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:465,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:461,4'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:461,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:461,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:461,4'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:461,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:461,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_command_replied_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         15
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_idx_i
        - array_is_created_i
        - smtp_server_reply_is_success
      functionUses:    15
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:688,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:689,3'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_reply_is_success
            - BranchSide:      'smtp-server-command.c:691,9'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_reply_is_success
        - Branch String:   'smtp-server-command.c:691,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:693,4'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_reply_is_success
            - BranchSide:      'smtp-server-command.c:700,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:694,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:695,4'
              BranchSideFuncs:
                - smtp_server_reply_is_success
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:696,36'
              BranchSideFuncs:
                - smtp_server_reply_is_success
                - array_idx_i
        - Branch String:   'smtp-server-command.c:696,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:697,12'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_reply_is_success
            - BranchSide:      'smtp-server-command.c:698,2'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_reply_is_success
      Callsites:
        - Src:             'smtp-server-command.c:688,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:693,4'
          Dst:             array_idx_i
        - Src:             'smtp-server-command.c:696,7'
          Dst:             smtp_server_reply_is_success
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    smtp_server_command_reply_status_equals
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - cmd
        - status
      BBCount:         10
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_server_command_get_reply
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:677,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:677,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:678,40'
              BranchSideFuncs:
                - smtp_server_command_get_reply
        - Branch String:   'smtp-server-command.c:680,33'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:680,36'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:680,33'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:677,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:678,10'
          Dst:             smtp_server_command_get_reply
    - functionName:    smtp_server_command_get_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - cmd
        - idx
      BBCount:         12
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - array_idx_get_space_i
        - array_is_created_i
        - i_panic
      functionUses:    7
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:661,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:661,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:663,7'
              BranchSideFuncs:
                - array_is_created_i.316
                - array_idx_get_space_i
        - Branch String:   'smtp-server-command.c:663,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:664,3'
              BranchSideFuncs:
                - array_idx_get_space_i
            - BranchSide:      'smtp-server-command.c:666,10'
              BranchSideFuncs:
                - array_idx_get_space_i
        - Branch String:   'smtp-server-command.c:667,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:668,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:669,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:661,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:663,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:666,10'
          Dst:             array_idx_get_space_i
    - functionName:    smtp_server_command_reply_is_forwarded
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_idx_i
        - array_is_created_i
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:640,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:641,3'
              BranchSideFuncs:
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:643,9'
              BranchSideFuncs:
                - array_idx_i
        - Branch String:   'smtp-server-command.c:643,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:645,4'
              BranchSideFuncs:
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:652,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:646,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:647,4'
              BranchSideFuncs:
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:648,7'
              BranchSideFuncs:
                - array_idx_i
        - Branch String:   'smtp-server-command.c:648,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:649,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:650,2'
              BranchSideFuncs:
                - array_idx_i
      Callsites:
        - Src:             'smtp-server-command.c:640,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:645,4'
          Dst:             array_idx_i
    - functionName:    smtp_server_command_is_replied
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_idx_i
        - array_is_created_i
      functionUses:    33
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:623,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:624,3'
              BranchSideFuncs:
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:626,9'
              BranchSideFuncs:
                - array_idx_i
        - Branch String:   'smtp-server-command.c:626,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:628,4'
              BranchSideFuncs:
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:633,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:629,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:630,4'
              BranchSideFuncs:
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:631,2'
              BranchSideFuncs:
                - array_idx_i
      Callsites:
        - Src:             'smtp-server-command.c:623,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:628,4'
          Dst:             array_idx_i
    - functionName:    smtp_server_command_handle_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         24
      ICount:          121
      EdgeCount:       26
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_unreached
        - smtp_server_command_input_unlock
        - smtp_server_command_is_complete
        - smtp_server_command_ready_to_reply
        - smtp_server_command_replied
        - smtp_server_connection_ref
        - smtp_server_connection_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:548,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:549,10'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_command_is_complete
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_ready_to_reply
                - i_unreached
                - smtp_server_command_input_unlock
            - BranchSide:      'smtp-server-command.c:551,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_command_is_complete
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_ready_to_reply
                - i_unreached
                - smtp_server_command_input_unlock
        - Branch String:   'smtp-server-command.c:551,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:552,37'
              BranchSideFuncs:
                - smtp_server_command_input_unlock
                - smtp_server_connection_unref
                - smtp_server_command_is_complete
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_ready_to_reply
                - i_unreached
            - BranchSide:      'smtp-server-command.c:555,10'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_command_is_complete
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_ready_to_reply
                - i_unreached
        - Branch String:   'smtp-server-command.c:555,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:558,40'
              BranchSideFuncs:
                - smtp_server_command_is_complete
                - event_want_level
                - event_send_abort
                - smtp_server_connection_unref
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-command.c:558,40'
              BranchSideFuncs:
                - smtp_server_command_is_complete
                - event_want_level
                - event_send_abort
                - smtp_server_connection_unref
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-command.c:567,3'
              BranchSideFuncs:
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-command.c:567,3'
              BranchSideFuncs:
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-command.c:569,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-command.c:558,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:559,4'
              BranchSideFuncs:
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-command.c:563,38'
              BranchSideFuncs:
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_unref
        - Branch String:   'smtp-server-command.c:559,4'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:559,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-command.c:559,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-command.c:546,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-command.c:548,7'
          Dst:             smtp_server_command_replied
        - Src:             'smtp-server-command.c:549,10'
          Dst:             smtp_server_connection_unref
        - Src:             'smtp-server-command.c:552,3'
          Dst:             smtp_server_command_input_unlock
        - Src:             'smtp-server-command.c:558,8'
          Dst:             smtp_server_command_is_complete
        - Src:             'smtp-server-command.c:559,4'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:559,4'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:559,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:563,3'
          Dst:             smtp_server_command_ready_to_reply
        - Src:             'smtp-server-command.c:569,3'
          Dst:             i_unreached
        - Src:             'smtp-server-command.c:572,9'
          Dst:             smtp_server_connection_unref
    - functionName:    smtp_server_command_ready_to_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         8
      ICount:          49
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_connection_trigger_output
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:501,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:501,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_trigger_output
            - BranchSide:      'smtp-server-command.c:501,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_trigger_output
      Callsites:
        - Src:             'smtp-server-command.c:501,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:501,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:501,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:502,2'
          Dst:             smtp_server_connection_trigger_output
    - functionName:    smtp_server_command_submit_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 617
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         43
      ICount:          222
      EdgeCount:       50
      CyclomaticComplexity: 9
      functionsReached:
        - array_idx_i
        - array_is_created_i
        - i_panic
        - smtp_server_command_handle_reply
        - smtp_server_connection_terminate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:581,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:581,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-command.c:581,2'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-command.c:581,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:581,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:583,12'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
        - Branch String:   'smtp-server-command.c:584,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:586,4'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-command.c:601,2'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
        - Branch String:   'smtp-server-command.c:587,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:588,4'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
            - BranchSide:      'smtp-server-command.c:589,12'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
        - Branch String:   'smtp-server-command.c:591,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:591,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:592,11'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
        - Branch String:   'smtp-server-command.c:592,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:596,11'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
            - BranchSide:      'smtp-server-command.c:596,11'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
            - BranchSide:      'smtp-server-command.c:596,11'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
            - BranchSide:      'smtp-server-command.c:599,2'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
                - i_panic
                - array_idx_i
                - i_panic
        - Branch String:   'smtp-server-command.c:601,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:601,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:604,6'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
        - Branch String:   'smtp-server-command.c:604,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:605,3'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
            - BranchSide:      'smtp-server-command.c:606,11'
              BranchSideFuncs:
                - smtp_server_command_handle_reply
                - smtp_server_connection_terminate
        - Branch String:   'smtp-server-command.c:609,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:610,3'
              BranchSideFuncs:
                - smtp_server_connection_terminate
            - BranchSide:      'smtp-server-command.c:612,6'
              BranchSideFuncs:
                - smtp_server_connection_terminate
        - Branch String:   'smtp-server-command.c:612,19'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:612,22'
              BranchSideFuncs:
                - smtp_server_connection_terminate
            - BranchSide:      'smtp-server-command.c:612,19'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:612,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:612,6'
              BranchSideFuncs:
                - smtp_server_connection_terminate
            - BranchSide:      'smtp-server-command.c:613,3'
              BranchSideFuncs:
                - smtp_server_connection_terminate
      Callsites:
        - Src:             'smtp-server-command.c:581,2'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:581,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:586,4'
          Dst:             array_idx_i
        - Src:             'smtp-server-command.c:591,3'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:601,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:609,7'
          Dst:             smtp_server_command_handle_reply
        - Src:             'smtp-server-command.c:613,3'
          Dst:             smtp_server_connection_terminate
    - functionName:    smtp_server_command_get_reply_count
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         7
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:480,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:480,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:480,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:480,2'
          Dst:             i_panic
    - functionName:    smtp_server_command_set_reply_count
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - cmd
        - count
      BBCount:         11
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - array_is_created_i
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:472,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:472,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:473,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - i_panic
        - Branch String:   'smtp-server-command.c:473,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:473,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:473,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:472,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:473,2'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:473,2'
          Dst:             i_panic
    - functionName:    smtp_server_command_remove_hook
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - type
        - func
      BBCount:         30
      ICount:          175
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:399,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:400,48'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:411,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-command.c:402,26'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:402,29'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:409,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-command.c:402,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:403,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:409,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-command.c:403,4'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:403,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:403,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-command.c:403,4'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:403,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:403,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-command.c:411,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:411,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:411,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:411,2'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_command_add_hook
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - type
        - func
        - context
      BBCount:         22
      ICount:          153
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
      functionUses:    24
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:372,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:372,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:374,9'
              BranchSideFuncs:
                - malloc_multiply_check.346
                - p_malloc.347
                - i_panic
        - Branch String:   'smtp-server-command.c:375,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:377,3'
              BranchSideFuncs:
                - malloc_multiply_check.346
                - p_malloc.347
                - i_panic
            - BranchSide:      'smtp-server-command.c:382,9'
              BranchSideFuncs:
                - malloc_multiply_check.346
                - p_malloc.347
        - Branch String:   'smtp-server-command.c:377,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:377,3'
              BranchSideFuncs:
                - malloc_multiply_check.346
                - p_malloc.347
                - i_panic
            - BranchSide:      'smtp-server-command.c:377,3'
              BranchSideFuncs:
                - malloc_multiply_check.346
                - p_malloc.347
                - i_panic
        - Branch String:   'smtp-server-command.c:377,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:377,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:379,10'
              BranchSideFuncs:
                - malloc_multiply_check.346
                - p_malloc.347
                - i_panic
        - Branch String:   'smtp-server-command.c:387,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:387,2'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:387,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:372,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:377,3'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:382,9'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-command.c:382,9'
          Dst:             p_malloc
    - functionName:    smtp_server_command_abort
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _cmd
      BBCount:         30
      ICount:          220
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - smtp_server_command_pipeline_unblock
        - smtp_server_command_unref
        - smtp_server_reply_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:342,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:343,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
                - e_debug
            - BranchSide:      'smtp-server-command.c:346,4'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
                - e_debug
        - Branch String:   'smtp-server-command.c:343,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:343,3'
              BranchSideFuncs:
                - e_debug
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:343,3'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:351,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:351,3'
              BranchSideFuncs:
                - e_debug
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:351,3'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:354,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:354,3'
              BranchSideFuncs:
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:354,3'
              BranchSideFuncs:
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:354,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:354,3'
              BranchSideFuncs:
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:354,3'
              BranchSideFuncs:
                - smtp_server_reply_free
                - smtp_server_command_pipeline_unblock
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-command.c:343,3'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:343,3'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:343,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:346,4'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-command.c:351,3'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:351,3'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:351,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:358,2'
          Dst:             smtp_server_reply_free
        - Src:             'smtp-server-command.c:360,2'
          Dst:             smtp_server_command_pipeline_unblock
        - Src:             'smtp-server-command.c:361,2'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_command_fail
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - status
        - enh_code
        - fmt
      BBCount:         20
      ICount:          143
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - array_idx_i
        - array_is_created_i
        - i_panic
        - smtp_server_reply_indexv
      functionUses:    13
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:813,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:813,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:815,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_reply_indexv
                - array_idx_i
                - smtp_server_reply_indexv
        - Branch String:   'smtp-server-command.c:816,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:817,29'
              BranchSideFuncs:
                - smtp_server_reply_indexv
            - BranchSide:      'smtp-server-command.c:819,16'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_reply_indexv
                - array_idx_i
        - Branch String:   'smtp-server-command.c:819,9'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:0,0'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_reply_indexv
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:820,8'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_reply_indexv
                - array_idx_i
        - Branch String:   'smtp-server-command.c:822,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:824,5'
              BranchSideFuncs:
                - array_idx_i
                - smtp_server_reply_indexv
                - array_is_created_i.316
            - BranchSide:      'smtp-server-command.c:829,8'
              BranchSideFuncs:
                - smtp_server_reply_indexv
                - array_is_created_i.316
                - array_idx_i
        - Branch String:   'smtp-server-command.c:829,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:831,4'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_reply_indexv
                - array_idx_i
            - BranchSide:      'smtp-server-command.c:836,2'
              BranchSideFuncs:
                - array_is_created_i.316
                - smtp_server_reply_indexv
                - array_idx_i
      Callsites:
        - Src:             'smtp-server-command.c:813,2'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:817,3'
          Dst:             smtp_server_reply_indexv
        - Src:             'smtp-server-command.c:822,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-command.c:824,5'
          Dst:             array_idx_i
        - Src:             'smtp-server-command.c:832,4'
          Dst:             smtp_server_reply_indexv
    - functionName:    smtp_server_command_execute
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         37
      ICount:          238
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - e_debug
        - event_add_str
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_command_fail
        - smtp_server_command_ref
        - smtp_server_command_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:223,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:223,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
                - smtp_server_command_fail
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-command.c:223,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
                - smtp_server_command_fail
                - smtp_server_command_fail
        - Branch String:   'smtp-server-command.c:225,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:234,28'
              BranchSideFuncs:
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-command.c:237,14'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
                - smtp_server_command_fail
        - Branch String:   'smtp-server-command.c:237,32'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:237,35'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-command.c:256,14'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
        - Branch String:   'smtp-server-command.c:237,58'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:238,7'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-command.c:256,14'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
        - Branch String:   'smtp-server-command.c:237,13'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:253,28'
              BranchSideFuncs:
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-command.c:256,14'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
                - smtp_server_command_fail
        - Branch String:   'smtp-server-command.c:256,34'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:256,38'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-command.c:271,41'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-command.c:256,62'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:257,7'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-command.c:271,41'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-command.c:256,13'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:267,28'
              BranchSideFuncs:
                - smtp_server_command_fail
            - BranchSide:      'smtp-server-command.c:271,41'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-command.c:273,3'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:273,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-command.c:274,27'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
        - Branch String:   'smtp-server-command.c:276,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:277,4'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-command.c:278,8'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-command.c:217,2'
          Dst:             event_add_str
        - Src:             'smtp-server-command.c:218,2'
          Dst:             event_add_str
        - Src:             'smtp-server-command.c:221,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-command.c:223,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:223,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:223,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-command.c:234,3'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-command.c:253,3'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-command.c:267,3'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-command.c:273,3'
          Dst:             i_panic
        - Src:             'smtp-server-command.c:274,3'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-command.c:278,8'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_command_find
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - name
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_bsearch_i
        - array_sort_i
        - smtp_server_command_bsearch
        - smtp_server_command_cmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:80,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:80,6'
              BranchSideFuncs:
                - array_sort_i
                - array_bsearch_i
            - BranchSide:      'smtp-server-command.c:81,3'
              BranchSideFuncs:
                - array_sort_i
                - array_bsearch_i
      Callsites:
        - Src:             'smtp-server-command.c:81,3'
          Dst:             array_sort_i
        - Src:             'smtp-server-command.c:81,3'
          Dst:             smtp_server_command_cmp
        - Src:             'smtp-server-command.c:85,9'
          Dst:             array_bsearch_i
        - Src:             'smtp-server-command.c:85,9'
          Dst:             smtp_server_command_bsearch
    - functionName:    smtp_server_command_new
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - name
      BBCount:         8
      ICount:          74
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - p_strdup
        - smtp_server_command_alloc
        - smtp_server_command_find
        - smtp_server_command_update_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:207,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:207,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-command.c:207,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-command.c:201,8'
          Dst:             smtp_server_command_alloc
        - Src:             'smtp-server-command.c:202,22'
          Dst:             p_strdup
        - Src:             'smtp-server-command.c:203,13'
          Dst:             smtp_server_command_find
        - Src:             'smtp-server-command.c:205,2'
          Dst:             smtp_server_command_update_event
        - Src:             'smtp-server-command.c:207,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:207,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:207,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_command_alloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         8
      ICount:          108
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - event_create
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:174,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:174,2'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:174,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-command.c:164,9'
          Dst:             pool_alloconly_create
        - Src:             'smtp-server-command.c:165,8'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-command.c:165,8'
          Dst:             p_malloc
        - Src:             'smtp-server-command.c:168,23'
          Dst:             event_create
    - functionName:    smtp_server_command_update_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - event_add_str
        - event_set_append_log_prefix
        - t_str_ucase
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:145,23'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:145,14'
              BranchSideFuncs:
                - event_add_str
                - event_add_str
                - t_strdup_printf
                - event_set_append_log_prefix
                - event_add_str
            - BranchSide:      'smtp-server-command.c:147,21'
              BranchSideFuncs:
                - t_str_ucase
                - event_add_str
                - event_add_str
                - t_strdup_printf
                - event_set_append_log_prefix
                - event_add_str
        - Branch String:   'smtp-server-command.c:149,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:150,17'
              BranchSideFuncs:
                - event_add_str
                - event_add_str
                - t_strdup_printf
                - event_set_append_log_prefix
            - BranchSide:      'smtp-server-command.c:152,17'
              BranchSideFuncs:
                - event_add_str
                - event_add_str
                - t_strdup_printf
                - event_set_append_log_prefix
      Callsites:
        - Src:             'smtp-server-command.c:147,9'
          Dst:             t_str_ucase
        - Src:             'smtp-server-command.c:150,3'
          Dst:             event_add_str
        - Src:             'smtp-server-command.c:152,3'
          Dst:             event_add_str
        - Src:             'smtp-server-command.c:153,2'
          Dst:             event_add_str
        - Src:             'smtp-server-command.c:155,9'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-command.c:154,2'
          Dst:             event_set_append_log_prefix
    - functionName:    smtp_server_command_new_invalid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         8
      ICount:          49
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_command_alloc
        - smtp_server_command_update_event
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:189,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:189,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-command.c:189,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-command.c:186,8'
          Dst:             smtp_server_command_alloc
        - Src:             'smtp-server-command.c:187,2'
          Dst:             smtp_server_command_update_event
        - Src:             'smtp-server-command.c:189,2'
          Dst:             event_want_level
        - Src:             'smtp-server-command.c:189,2'
          Dst:             e_debug
        - Src:             'smtp-server-command.c:189,2'
          Dst:             event_send_abort
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.306
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.306
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    smtp_server_commands_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
      BBCount:         7
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - array_create_i
        - smtp_server_cmd_auth
        - smtp_server_cmd_bdat
        - smtp_server_cmd_data
        - smtp_server_cmd_ehlo
        - smtp_server_cmd_helo
        - smtp_server_cmd_mail
        - smtp_server_cmd_noop
        - smtp_server_cmd_quit
        - smtp_server_cmd_rcpt
        - smtp_server_cmd_rset
        - smtp_server_cmd_starttls
        - smtp_server_cmd_vrfy
        - smtp_server_cmd_xclient
        - smtp_server_command_register
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:93,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:93,2'
              BranchSideFuncs:
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
            - BranchSide:      'smtp-server-command.c:96,4'
              BranchSideFuncs:
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
            - BranchSide:      'smtp-server-command.c:105,4'
              BranchSideFuncs:
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
                - smtp_server_command_register
      Callsites:
        - Src:             'smtp-server-command.c:91,2'
          Dst:             array_create_i
        - Src:             'smtp-server-command.c:95,3'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:95,3'
          Dst:             smtp_server_cmd_ehlo
        - Src:             'smtp-server-command.c:99,3'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:99,3'
          Dst:             smtp_server_cmd_helo
        - Src:             'smtp-server-command.c:104,3'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:104,3'
          Dst:             smtp_server_cmd_ehlo
        - Src:             'smtp-server-command.c:111,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:111,2'
          Dst:             smtp_server_cmd_auth
        - Src:             'smtp-server-command.c:114,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:114,2'
          Dst:             smtp_server_cmd_starttls
        - Src:             'smtp-server-command.c:117,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:117,2'
          Dst:             smtp_server_cmd_mail
        - Src:             'smtp-server-command.c:119,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:119,2'
          Dst:             smtp_server_cmd_rcpt
        - Src:             'smtp-server-command.c:120,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:120,2'
          Dst:             smtp_server_cmd_data
        - Src:             'smtp-server-command.c:121,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:121,2'
          Dst:             smtp_server_cmd_bdat
        - Src:             'smtp-server-command.c:122,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:122,2'
          Dst:             smtp_server_cmd_rset
        - Src:             'smtp-server-command.c:125,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:125,2'
          Dst:             smtp_server_cmd_vrfy
        - Src:             'smtp-server-command.c:126,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:126,2'
          Dst:             smtp_server_cmd_noop
        - Src:             'smtp-server-command.c:129,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:129,2'
          Dst:             smtp_server_cmd_quit
        - Src:             'smtp-server-command.c:133,2'
          Dst:             smtp_server_command_register
        - Src:             'smtp-server-command.c:133,2'
          Dst:             smtp_server_cmd_xclient
    - functionName:    smtp_server_command_register
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - server
        - name
        - func
        - flags
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_append_i
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-command.c:24,2'
          Dst:             array_append_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    smtp_server_command_override
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - server
        - name
        - func
        - flags
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_command_do_unregister
        - smtp_server_command_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-command.c:59,2'
          Dst:             smtp_server_command_do_unregister
        - Src:             'smtp-server-command.c:60,2'
          Dst:             smtp_server_command_register
    - functionName:    smtp_server_command_do_unregister
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - name
      BBCount:         10
      ICount:          69
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_delete_i
        - array_get_i
        - strcasecmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:37,2'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:38,18'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i
            - BranchSide:      'smtp-server-command.c:44,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-command.c:38,7'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:39,4'
              BranchSideFuncs:
                - array_delete_i
            - BranchSide:      'smtp-server-command.c:42,2'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i
      Callsites:
        - Src:             'smtp-server-command.c:36,8'
          Dst:             array_get_i
        - Src:             'smtp-server-command.c:38,7'
          Dst:             strcasecmp
        - Src:             'smtp-server-command.c:39,4'
          Dst:             array_delete_i
    - functionName:    smtp_server_command_unregister
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-command.c'
      linkageType:     externalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - name
      BBCount:         5
      ICount:          30
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_command_do_unregister
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-command.c:50,6'
          Branch Sides:
            - BranchSide:      'smtp-server-command.c:51,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-command.c:52,68'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'smtp-server-command.c:50,6'
          Dst:             smtp_server_command_do_unregister
        - Src:             'smtp-server-command.c:52,2'
          Dst:             i_panic
    - functionName:    smtp_server_recipient_update_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prcpt
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_str
        - event_set_append_log_prefix
        - smtp_address_encode
        - smtp_params_rcpt_add_to_event
        - str_sanitize
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-recipient.c:15,21'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-recipient.c:17,2'
          Dst:             event_add_str
        - Src:             'smtp-server-recipient.c:18,2'
          Dst:             smtp_params_rcpt_add_to_event
        - Src:             'smtp-server-recipient.c:20,39'
          Dst:             str_sanitize
        - Src:             'smtp-server-recipient.c:20,10'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-recipient.c:19,2'
          Dst:             event_set_append_log_prefix
    - functionName:    smtp_server_recipient_remove_hook
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - type
        - func
      BBCount:         30
      ICount:          179
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:314,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:315,50'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:326,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-recipient.c:317,26'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:317,29'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:324,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-recipient.c:317,7'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:318,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:324,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-recipient.c:318,4'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:318,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:318,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-recipient.c:318,4'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:318,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:318,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-recipient.c:326,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:326,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:326,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-recipient.c:326,2'
          Dst:             i_panic
    - functionName:    smtp_server_recipient_add_hook
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - type
        - func
        - context
      BBCount:         22
      ICount:          156
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:284,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:284,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:286,9'
              BranchSideFuncs:
                - malloc_multiply_check.428
                - p_malloc.429
                - i_panic
        - Branch String:   'smtp-server-recipient.c:287,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:289,3'
              BranchSideFuncs:
                - malloc_multiply_check.428
                - p_malloc.429
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:294,9'
              BranchSideFuncs:
                - malloc_multiply_check.428
                - p_malloc.429
        - Branch String:   'smtp-server-recipient.c:289,3'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:289,3'
              BranchSideFuncs:
                - malloc_multiply_check.428
                - p_malloc.429
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:289,3'
              BranchSideFuncs:
                - malloc_multiply_check.428
                - p_malloc.429
                - i_panic
        - Branch String:   'smtp-server-recipient.c:289,3'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:289,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:291,10'
              BranchSideFuncs:
                - malloc_multiply_check.428
                - p_malloc.429
                - i_panic
        - Branch String:   'smtp-server-recipient.c:299,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:299,2'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:299,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-recipient.c:284,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:289,3'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:294,9'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-recipient.c:294,9'
          Dst:             p_malloc
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_recipient_finished
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - reply
      BBCount:         12
      ICount:          88
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_reply_add_to_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:264,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:264,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:265,2'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-recipient.c:272,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:272,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-recipient.c:272,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-recipient.c:264,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:268,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-recipient.c:270,2'
          Dst:             smtp_server_reply_add_to_event
        - Src:             'smtp-server-recipient.c:272,2'
          Dst:             event_want_level
        - Src:             'smtp-server-recipient.c:272,2'
          Dst:             e_debug
        - Src:             'smtp-server-recipient.c:272,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_recipient_reset
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
      BBCount:         12
      ICount:          100
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:248,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:248,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:249,2'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-recipient.c:258,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:258,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-recipient.c:258,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-recipient.c:248,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:252,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-recipient.c:258,2'
          Dst:             event_want_level
        - Src:             'smtp-server-recipient.c:258,2'
          Dst:             e_debug
        - Src:             'smtp-server-recipient.c:258,2'
          Dst:             event_send_abort
    - functionName:    smtp_reply_is_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-reply.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_recipient_reply_forward
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - from
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_reply_is_success
        - smtp_server_command_is_rcpt
        - smtp_server_reply_create_forward
        - smtp_server_reply_replace_path
        - smtp_server_reply_submit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:236,59'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:236,59'
              BranchSideFuncs:
                - smtp_reply_is_success
                - smtp_server_reply_create_forward
                - smtp_server_reply_replace_path
                - smtp_server_reply_submit
            - BranchSide:      'smtp-server-recipient.c:237,28'
              BranchSideFuncs:
                - smtp_reply_is_success
                - smtp_server_reply_create_forward
                - smtp_server_reply_replace_path
                - smtp_server_reply_submit
      Callsites:
        - Src:             'smtp-server-recipient.c:236,20'
          Dst:             smtp_server_command_is_rcpt
        - Src:             'smtp-server-recipient.c:237,6'
          Dst:             smtp_reply_is_success
        - Src:             'smtp-server-recipient.c:240,10'
          Dst:             smtp_server_reply_create_forward
        - Src:             'smtp-server-recipient.c:242,2'
          Dst:             smtp_server_reply_replace_path
        - Src:             'smtp-server-recipient.c:243,2'
          Dst:             smtp_server_reply_submit
    - functionName:    smtp_server_recipient_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - status
        - enh_code
        - fmt
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_recipient_replyv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-recipient.c:229,2'
          Dst:             smtp_server_recipient_replyv
    - functionName:    smtp_server_recipient_replyv
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - status
        - enh_code
        - fmt
        - args
      BBCount:         13
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_address_encode
        - smtp_server_command_is_rcpt
        - smtp_server_reply_index
        - smtp_server_reply_indexv
        - t_strdup_vprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:209,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:209,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:211,34'
              BranchSideFuncs:
                - smtp_server_command_is_rcpt
                - smtp_address_encode
                - t_strdup_vprintf
                - smtp_server_reply_index
                - smtp_server_reply_indexv
        - Branch String:   'smtp-server-recipient.c:211,45'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:211,49'
              BranchSideFuncs:
                - smtp_address_encode
                - t_strdup_vprintf
                - smtp_server_reply_index
                - smtp_server_reply_indexv
            - BranchSide:      'smtp-server-recipient.c:217,26'
              BranchSideFuncs:
                - smtp_address_encode
                - t_strdup_vprintf
                - smtp_server_reply_index
        - Branch String:   'smtp-server-recipient.c:211,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:212,28'
              BranchSideFuncs:
                - smtp_server_reply_indexv
            - BranchSide:      'smtp-server-recipient.c:217,26'
              BranchSideFuncs:
                - smtp_address_encode
                - t_strdup_vprintf
                - smtp_server_reply_index
      Callsites:
        - Src:             'smtp-server-recipient.c:209,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:211,6'
          Dst:             smtp_server_command_is_rcpt
        - Src:             'smtp-server-recipient.c:212,3'
          Dst:             smtp_server_reply_indexv
        - Src:             'smtp-server-recipient.c:218,16'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-recipient.c:219,5'
          Dst:             t_strdup_vprintf
        - Src:             'smtp-server-recipient.c:217,2'
          Dst:             smtp_server_reply_index
    - functionName:    smtp_server_recipient_is_replied
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_command_is_replied
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:200,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:200,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:200,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
      Callsites:
        - Src:             'smtp-server-recipient.c:200,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:202,9'
          Dst:             smtp_server_command_is_replied
    - functionName:    smtp_server_recipient_get_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_command_get_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:192,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:194,40'
              BranchSideFuncs:
                - smtp_server_command_get_reply
            - BranchSide:      'smtp-server-recipient.c:195,39'
              BranchSideFuncs:
                - smtp_server_command_get_reply
      Callsites:
        - Src:             'smtp-server-recipient.c:194,10'
          Dst:             smtp_server_command_get_reply
        - Src:             'smtp-server-recipient.c:195,9'
          Dst:             smtp_server_command_get_reply
    - functionName:    smtp_server_recipient_data_replied
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
      BBCount:         10
      ICount:          48
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_server_recipient_call_hooks
        - smtp_server_recipient_get_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:178,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:179,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:180,38'
              BranchSideFuncs:
                - smtp_server_recipient_get_reply
                - smtp_server_recipient_call_hooks
        - Branch String:   'smtp-server-recipient.c:180,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:181,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:182,2'
              BranchSideFuncs:
                - smtp_server_recipient_call_hooks
        - Branch String:   'smtp-server-recipient.c:183,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:183,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:186,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-recipient.c:180,6'
          Dst:             smtp_server_recipient_get_reply
        - Src:             'smtp-server-recipient.c:183,7'
          Dst:             smtp_server_recipient_call_hooks
    - functionName:    smtp_server_recipient_call_hooks
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - _rcpt
        - type
      BBCount:         32
      ICount:          193
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - smtp_server_recipient_ref
        - smtp_server_recipient_unref
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:338,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:339,29'
              BranchSideFuncs:
                - smtp_server_recipient_ref
                - smtp_server_recipient_unref
            - BranchSide:      'smtp-server-recipient.c:341,9'
              BranchSideFuncs:
                - smtp_server_recipient_unref
        - Branch String:   'smtp-server-recipient.c:342,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:343,50'
              BranchSideFuncs:
                - smtp_server_recipient_unref
            - BranchSide:      'smtp-server-recipient.c:354,6'
              BranchSideFuncs:
                - smtp_server_recipient_unref
        - Branch String:   'smtp-server-recipient.c:345,7'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:346,4'
              BranchSideFuncs:
                - smtp_server_recipient_unref
            - BranchSide:      'smtp-server-recipient.c:351,10'
              BranchSideFuncs:
                - smtp_server_recipient_unref
        - Branch String:   'smtp-server-recipient.c:346,4'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:346,4'
              BranchSideFuncs:
                - smtp_server_recipient_unref
            - BranchSide:      'smtp-server-recipient.c:346,4'
              BranchSideFuncs:
                - smtp_server_recipient_unref
        - Branch String:   'smtp-server-recipient.c:346,4'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:346,4'
              BranchSideFuncs:
                - smtp_server_recipient_unref
            - BranchSide:      'smtp-server-recipient.c:346,4'
              BranchSideFuncs:
                - smtp_server_recipient_unref
        - Branch String:   'smtp-server-recipient.c:354,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:355,8'
              BranchSideFuncs:
                - smtp_server_recipient_unref
            - BranchSide:      'smtp-server-recipient.c:360,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-recipient.c:355,7'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:356,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:359,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-recipient.c:339,3'
          Dst:             smtp_server_recipient_ref
        - Src:             'smtp-server-recipient.c:355,8'
          Dst:             smtp_server_recipient_unref
    - functionName:    smtp_server_recipient_ref
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
      BBCount:         10
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:78,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:79,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:80,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-server-recipient.c:80,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:80,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:81,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-recipient.c:80,2'
          Dst:             i_panic
    - functionName:    smtp_server_recipient_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _rcpt
      BBCount:         24
      ICount:          172
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_unref
        - event_want_level
        - i_panic
        - i_unreached
        - pool_unref
        - smtp_server_recipient_call_hooks
        - smtp_server_recipient_create_event
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:92,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:93,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:94,6'
              BranchSideFuncs:
                - smtp_server_recipient_call_hooks
                - i_unreached
                - smtp_server_recipient_create_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.446
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-recipient.c:94,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:95,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:97,2'
              BranchSideFuncs:
                - smtp_server_recipient_call_hooks
                - i_unreached
                - smtp_server_recipient_create_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.446
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-recipient.c:97,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:97,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:98,8'
              BranchSideFuncs:
                - smtp_server_recipient_call_hooks
                - i_unreached
                - smtp_server_recipient_create_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.446
                - e_debug
        - Branch String:   'smtp-server-recipient.c:98,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:99,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:100,2'
              BranchSideFuncs:
                - smtp_server_recipient_call_hooks
                - i_unreached
                - smtp_server_recipient_create_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.446
                - e_debug
        - Branch String:   'smtp-server-recipient.c:102,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:104,3'
              BranchSideFuncs:
                - smtp_server_recipient_create_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.446
                - e_debug
            - BranchSide:      'smtp-server-recipient.c:106,7'
              BranchSideFuncs:
                - smtp_server_recipient_create_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.446
                - e_debug
        - Branch String:   'smtp-server-recipient.c:106,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:107,38'
              BranchSideFuncs:
                - event_unref
                - pool_unref.446
            - BranchSide:      'smtp-server-recipient.c:119,15'
              BranchSideFuncs:
                - event_unref
                - pool_unref.446
        - Branch String:   'smtp-server-recipient.c:116,3'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:116,3'
              BranchSideFuncs:
                - e_debug
                - event_unref
                - pool_unref.446
            - BranchSide:      'smtp-server-recipient.c:116,3'
              BranchSideFuncs:
                - event_send_abort
                - event_unref
                - pool_unref.446
      Callsites:
        - Src:             'smtp-server-recipient.c:97,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:102,7'
          Dst:             smtp_server_recipient_call_hooks
        - Src:             'smtp-server-recipient.c:104,3'
          Dst:             i_unreached
        - Src:             'smtp-server-recipient.c:107,3'
          Dst:             smtp_server_recipient_create_event
        - Src:             'smtp-server-recipient.c:110,4'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-recipient.c:116,3'
          Dst:             event_want_level
        - Src:             'smtp-server-recipient.c:116,3'
          Dst:             e_debug
        - Src:             'smtp-server-recipient.c:116,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-recipient.c:119,2'
          Dst:             event_unref
        - Src:             'smtp-server-recipient.c:120,2'
          Dst:             pool_unref
    - functionName:    smtp_server_recipient_create_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prcpt
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - event_create
        - event_drop_parent_log_prefixes
        - event_set_append_log_prefix
        - smtp_server_recipient_update_event
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:29,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:30,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:32,6'
              BranchSideFuncs:
                - event_create
                - event_drop_parent_log_prefixes
                - smtp_server_recipient_update_event
                - event_create
                - event_create
                - event_set_append_log_prefix
        - Branch String:   'smtp-server-recipient.c:32,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:34,7'
              BranchSideFuncs:
                - event_create
                - event_drop_parent_log_prefixes
                - smtp_server_recipient_update_event
                - event_create
                - event_set_append_log_prefix
            - BranchSide:      'smtp-server-recipient.c:42,17'
              BranchSideFuncs:
                - event_create
                - event_drop_parent_log_prefixes
                - smtp_server_recipient_update_event
        - Branch String:   'smtp-server-recipient.c:34,7'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:35,29'
              BranchSideFuncs:
                - event_create
                - event_set_append_log_prefix
                - event_create
                - event_drop_parent_log_prefixes
                - smtp_server_recipient_update_event
            - BranchSide:      'smtp-server-recipient.c:39,17'
              BranchSideFuncs:
                - event_create
                - event_drop_parent_log_prefixes
                - smtp_server_recipient_update_event
      Callsites:
        - Src:             'smtp-server-recipient.c:35,29'
          Dst:             event_create
        - Src:             'smtp-server-recipient.c:36,4'
          Dst:             event_set_append_log_prefix
        - Src:             'smtp-server-recipient.c:39,17'
          Dst:             event_create
        - Src:             'smtp-server-recipient.c:42,17'
          Dst:             event_create
        - Src:             'smtp-server-recipient.c:46,2'
          Dst:             event_drop_parent_log_prefixes
        - Src:             'smtp-server-recipient.c:48,2'
          Dst:             smtp_server_recipient_update_event
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_recipient_data_command
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - cmd
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_recipient_denied
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
        - reply
      BBCount:         16
      ICount:          106
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_reply_add_to_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:157,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:157,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:158,2'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-recipient.c:158,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:158,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:160,2'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-recipient.c:167,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:167,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-recipient.c:167,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-recipient.c:157,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:158,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:163,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-recipient.c:165,2'
          Dst:             smtp_server_reply_add_to_event
        - Src:             'smtp-server-recipient.c:167,2'
          Dst:             event_want_level
        - Src:             'smtp-server-recipient.c:167,2'
          Dst:             e_debug
        - Src:             'smtp-server-recipient.c:167,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_recipient_approved
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _rcpt
      BBCount:         16
      ICount:          96
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_recipient_call_hooks
        - smtp_server_transaction_add_rcpt
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:142,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:142,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:143,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_add_rcpt
                - smtp_server_recipient_call_hooks
                - e_debug
                - i_panic
        - Branch String:   'smtp-server-recipient.c:143,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:143,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-recipient.c:145,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_transaction_add_rcpt
                - smtp_server_recipient_call_hooks
                - e_debug
        - Branch String:   'smtp-server-recipient.c:145,2'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:145,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_transaction_add_rcpt
                - smtp_server_recipient_call_hooks
            - BranchSide:      'smtp-server-recipient.c:145,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_transaction_add_rcpt
                - smtp_server_recipient_call_hooks
      Callsites:
        - Src:             'smtp-server-recipient.c:142,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:143,2'
          Dst:             i_panic
        - Src:             'smtp-server-recipient.c:145,2'
          Dst:             event_want_level
        - Src:             'smtp-server-recipient.c:145,2'
          Dst:             e_debug
        - Src:             'smtp-server-recipient.c:145,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-recipient.c:148,2'
          Dst:             smtp_server_transaction_add_rcpt
        - Src:             'smtp-server-recipient.c:150,9'
          Dst:             smtp_server_recipient_call_hooks
    - functionName:    smtp_server_recipient_get_original
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rcpt
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-recipient.c:132,6'
          Branch Sides:
            - BranchSide:      'smtp-server-recipient.c:133,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-recipient.c:134,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_recipient_destroy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _rcpt
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_recipient_unref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-recipient.c:126,2'
          Dst:             smtp_server_recipient_unref
    - functionName:    smtp_server_recipient_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-recipient.c'
      linkageType:     externalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - rcpt_to
        - params
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - smtp_address_clone
        - smtp_params_rcpt_copy
        - smtp_server_recipient_create_event
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-recipient.c:59,9'
          Dst:             pool_alloconly_create
        - Src:             'smtp-server-recipient.c:60,10'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-recipient.c:60,10'
          Dst:             p_malloc
        - Src:             'smtp-server-recipient.c:65,21'
          Dst:             smtp_address_clone
        - Src:             'smtp-server-recipient.c:66,2'
          Dst:             smtp_params_rcpt_copy
        - Src:             'smtp-server-recipient.c:68,2'
          Dst:             smtp_server_recipient_create_event
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    smtp_server_transaction_write_trace_record
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - str
        - trans
        - rcpt_to_address
      BBCount:         26
      ICount:          236
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - array_count_i
        - array_idx_i
        - message_date_create
        - net_ip2addr
        - smtp_address_encode
        - smtp_address_write
        - smtp_server_connection_get_protocol_name
        - smtp_server_connection_get_security_string
        - smtp_server_recipient_get_original
        - str_append
        - str_printfa
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:301,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:303,4'
              BranchSideFuncs:
                - array_idx_i.513
                - smtp_server_recipient_get_original
                - smtp_address_encode
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
                - str_append.512
                - smtp_address_encode
            - BranchSide:      'smtp-server-transaction.c:319,13'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
                - str_append.512
        - Branch String:   'smtp-server-transaction.c:305,3'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:307,4'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
                - str_append.512
            - BranchSide:      'smtp-server-transaction.c:309,34'
              BranchSideFuncs:
                - smtp_address_encode
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
                - str_append.512
            - BranchSide:      'smtp-server-transaction.c:313,40'
              BranchSideFuncs:
                - smtp_server_recipient_get_original
                - smtp_address_encode
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
                - str_append.512
            - BranchSide:      'smtp-server-transaction.c:316,2'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
                - str_append.512
        - Branch String:   'smtp-server-transaction.c:320,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:321,14'
              BranchSideFuncs:
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
            - BranchSide:      'smtp-server-transaction.c:323,14'
              BranchSideFuncs:
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - net_ip2addr
        - Branch String:   'smtp-server-transaction.c:325,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:326,23'
              BranchSideFuncs:
                - net_ip2addr
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
            - BranchSide:      'smtp-server-transaction.c:327,6'
              BranchSideFuncs:
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
        - Branch String:   'smtp-server-transaction.c:327,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:328,14'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
            - BranchSide:      'smtp-server-transaction.c:333,54'
              BranchSideFuncs:
                - smtp_server_connection_get_security_string
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
        - Branch String:   'smtp-server-transaction.c:334,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:335,14'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
            - BranchSide:      'smtp-server-transaction.c:340,13'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_server_connection_get_protocol_name
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - smtp_address_write
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
                - str_append.512
                - str_append.512
                - str_append.512
        - Branch String:   'smtp-server-transaction.c:352,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:352,6'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
            - BranchSide:      'smtp-server-transaction.c:353,14'
              BranchSideFuncs:
                - str_append.512
                - str_append.512
                - str_append.512
                - str_append.512
                - message_date_create
                - str_append.512
                - str_printfa
      Callsites:
        - Src:             'smtp-server-transaction.c:301,6'
          Dst:             array_count_i
        - Src:             'smtp-server-transaction.c:303,4'
          Dst:             array_idx_i
        - Src:             'smtp-server-transaction.c:309,14'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-transaction.c:313,5'
          Dst:             smtp_server_recipient_get_original
        - Src:             'smtp-server-transaction.c:312,14'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-transaction.c:319,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:321,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:323,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:326,10'
          Dst:             net_ip2addr
        - Src:             'smtp-server-transaction.c:328,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:329,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:330,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:333,11'
          Dst:             smtp_server_connection_get_security_string
        - Src:             'smtp-server-transaction.c:335,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:336,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:337,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:340,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:341,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:342,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:343,18'
          Dst:             smtp_server_connection_get_protocol_name
        - Src:             'smtp-server-transaction.c:343,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:345,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:346,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:348,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:349,2'
          Dst:             smtp_address_write
        - Src:             'smtp-server-transaction.c:350,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:353,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:354,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:355,3'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:357,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:359,18'
          Dst:             message_date_create
        - Src:             'smtp-server-transaction.c:359,2'
          Dst:             str_append
        - Src:             'smtp-server-transaction.c:360,2'
          Dst:             str_printfa
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_transaction_fail_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - data_cmd
        - status
        - enh_code
        - fmt
        - args
      BBCount:         7
      ICount:          77
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - array_get_i
        - smtp_address_encode
        - smtp_server_reply_index
        - t_strdup_vprintf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:286,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:287,27'
              BranchSideFuncs:
                - smtp_address_encode
                - smtp_server_reply_index
            - BranchSide:      'smtp-server-transaction.c:291,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-transaction.c:284,8'
          Dst:             t_strdup_vprintf
        - Src:             'smtp-server-transaction.c:285,10'
          Dst:             array_get_i
        - Src:             'smtp-server-transaction.c:289,4'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-transaction.c:287,3'
          Dst:             smtp_server_reply_index
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:253,13'
          Dst:             array_count_i
    - functionName:    smtp_server_transaction_finished
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - cmd
      BBCount:         35
      ICount:          292
      EdgeCount:       42
      CyclomaticComplexity: 9
      functionsReached:
        - array_get_i
        - array_is_created_i
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_command_get_reply
        - smtp_server_recipient_finished
        - smtp_server_reply_add_to_event
        - smtp_server_reply_is_success
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:226,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:226,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-transaction.c:227,2'
              BranchSideFuncs:
                - array_is_created_i.544
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - smtp_server_command_get_reply
                - array_get_i.536
                - i_panic
        - Branch String:   'smtp-server-transaction.c:227,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:227,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-transaction.c:228,2'
              BranchSideFuncs:
                - array_is_created_i.544
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - smtp_server_command_get_reply
                - array_get_i.536
        - Branch String:   'smtp-server-transaction.c:231,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:232,11'
              BranchSideFuncs:
                - array_get_i.536
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - smtp_server_command_get_reply
            - BranchSide:      'smtp-server-transaction.c:234,18'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - smtp_server_command_get_reply
        - Branch String:   'smtp-server-transaction.c:238,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:241,8'
              BranchSideFuncs:
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
            - BranchSide:      'smtp-server-transaction.c:257,6'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
        - Branch String:   'smtp-server-transaction.c:241,7'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:243,42'
              BranchSideFuncs:
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
            - BranchSide:      'smtp-server-transaction.c:245,42'
              BranchSideFuncs:
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
        - Branch String:   'smtp-server-transaction.c:248,7'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:249,19'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - smtp_server_command_get_reply
            - BranchSide:      'smtp-server-transaction.c:251,16'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_command_get_reply
                - smtp_server_command_get_reply
                - smtp_server_recipient_finished
                - smtp_server_reply_is_success
                - smtp_server_command_get_reply
        - Branch String:   'smtp-server-transaction.c:257,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:259,47'
              BranchSideFuncs:
                - smtp_server_command_get_reply
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:263,3'
              BranchSideFuncs:
                - event_create_passthrough
                - smtp_server_reply_add_to_event
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-transaction.c:272,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:272,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:272,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-transaction.c:226,2'
          Dst:             i_panic
        - Src:             'smtp-server-transaction.c:227,2'
          Dst:             i_panic
        - Src:             'smtp-server-transaction.c:231,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:232,11'
          Dst:             array_get_i
        - Src:             'smtp-server-transaction.c:243,12'
          Dst:             smtp_server_command_get_reply
        - Src:             'smtp-server-transaction.c:245,12'
          Dst:             smtp_server_command_get_reply
        - Src:             'smtp-server-transaction.c:246,3'
          Dst:             smtp_server_recipient_finished
        - Src:             'smtp-server-transaction.c:248,7'
          Dst:             smtp_server_reply_is_success
        - Src:             'smtp-server-transaction.c:259,17'
          Dst:             smtp_server_command_get_reply
        - Src:             'smtp-server-transaction.c:263,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-transaction.c:270,2'
          Dst:             smtp_server_reply_add_to_event
        - Src:             'smtp-server-transaction.c:272,2'
          Dst:             event_want_level
        - Src:             'smtp-server-transaction.c:272,2'
          Dst:             e_debug
        - Src:             'smtp-server-transaction.c:272,2'
          Dst:             event_send_abort
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_transaction_reset
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
      BBCount:         19
      ICount:          192
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - array_get_i
        - array_is_created_i
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_recipient_reset
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:191,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:191,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-transaction.c:192,2'
              BranchSideFuncs:
                - array_is_created_i.544
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_recipient_reset
                - array_get_i.536
        - Branch String:   'smtp-server-transaction.c:195,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:196,11'
              BranchSideFuncs:
                - array_get_i.536
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_recipient_reset
            - BranchSide:      'smtp-server-transaction.c:198,18'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
                - smtp_server_recipient_reset
        - Branch String:   'smtp-server-transaction.c:202,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:203,31'
              BranchSideFuncs:
                - smtp_server_recipient_reset
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:206,3'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-transaction.c:214,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:214,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:214,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-transaction.c:191,2'
          Dst:             i_panic
        - Src:             'smtp-server-transaction.c:195,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:196,11'
          Dst:             array_get_i
        - Src:             'smtp-server-transaction.c:203,3'
          Dst:             smtp_server_recipient_reset
        - Src:             'smtp-server-transaction.c:206,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-transaction.c:214,2'
          Dst:             event_want_level
        - Src:             'smtp-server-transaction.c:214,2'
          Dst:             e_debug
        - Src:             'smtp-server-transaction.c:214,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_transaction_received
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - trans
        - data_size
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_int
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-transaction.c:181,2'
          Dst:             event_add_int
    - functionName:    smtp_server_transaction_data_command
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - cmd
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - array_is_created_i
        - i_memcpy
        - smtp_server_recipient_data_command
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:172,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:173,3'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.558
            - BranchSide:      'smtp-server-transaction.c:174,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.558
        - Branch String:   'smtp-server-transaction.c:174,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:174,2'
              BranchSideFuncs:
                - i_memcpy.558
                - smtp_server_recipient_data_command
            - BranchSide:      'smtp-server-transaction.c:174,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.558
        - Branch String:   'smtp-server-transaction.c:174,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:174,2'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.558
            - BranchSide:      'smtp-server-transaction.c:175,38'
              BranchSideFuncs:
                - smtp_server_recipient_data_command
                - i_memcpy.558
      Callsites:
        - Src:             'smtp-server-transaction.c:172,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:174,2'
          Dst:             i_memcpy
        - Src:             'smtp-server-transaction.c:175,3'
          Dst:             smtp_server_recipient_data_command
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:75,2'
          Dst:             i_panic
    - functionName:    smtp_server_transaction_rcpt_count
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - array_is_created_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:160,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:161,3'
              BranchSideFuncs:
                - array_count_i.518
            - BranchSide:      'smtp-server-transaction.c:162,9'
              BranchSideFuncs:
                - array_count_i.518
      Callsites:
        - Src:             'smtp-server-transaction.c:160,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:162,9'
          Dst:             array_count_i
    - functionName:    smtp_server_transaction_has_rcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - array_is_created_i
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:153,44'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:153,44'
              BranchSideFuncs:
                - array_count_i.518
            - BranchSide:      'smtp-server-transaction.c:154,3'
              BranchSideFuncs:
                - array_count_i.518
      Callsites:
        - Src:             'smtp-server-transaction.c:153,10'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:154,3'
          Dst:             array_count_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.511
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.511
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    smtp_server_transaction_add_rcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - rcpt
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_count_i
        - array_create_i
        - array_is_created_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:142,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:142,6'
              BranchSideFuncs:
                - array_count_i.518
                - array_append_i.564
            - BranchSide:      'smtp-server-transaction.c:143,3'
              BranchSideFuncs:
                - array_create_i.565
                - array_count_i.518
                - array_append_i.564
      Callsites:
        - Src:             'smtp-server-transaction.c:142,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:143,3'
          Dst:             array_create_i
        - Src:             'smtp-server-transaction.c:146,16'
          Dst:             array_count_i
        - Src:             'smtp-server-transaction.c:148,2'
          Dst:             array_append_i
    - functionName:    smtp_address_equals
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-address.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - address1
        - address2
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_cmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './smtp-address.h:191,10'
          Dst:             smtp_address_cmp
    - functionName:    smtp_server_transaction_find_rcpt_duplicate
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - rcpt
      BBCount:         22
      ICount:          130
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - array_is_created_i
        - i_memcpy
        - i_panic
        - smtp_address_equals
        - smtp_params_rcpt_equal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:128,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:128,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-transaction.c:129,2'
              BranchSideFuncs:
                - smtp_address_equals
                - smtp_params_rcpt_equal
                - i_memcpy.558
        - Branch String:   'smtp-server-transaction.c:129,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:129,2'
              BranchSideFuncs:
                - i_memcpy.558
                - smtp_address_equals
                - smtp_params_rcpt_equal
            - BranchSide:      'smtp-server-transaction.c:129,2'
              BranchSideFuncs:
                - smtp_address_equals
                - i_memcpy.558
                - smtp_params_rcpt_equal
        - Branch String:   'smtp-server-transaction.c:129,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:130,7'
              BranchSideFuncs:
                - smtp_address_equals
                - i_memcpy.558
                - smtp_params_rcpt_equal
            - BranchSide:      'smtp-server-transaction.c:136,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-transaction.c:130,7'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:131,4'
              BranchSideFuncs:
                - smtp_address_equals
                - smtp_params_rcpt_equal
                - i_memcpy.558
            - BranchSide:      'smtp-server-transaction.c:132,27'
              BranchSideFuncs:
                - smtp_address_equals
                - i_memcpy.558
                - smtp_params_rcpt_equal
        - Branch String:   'smtp-server-transaction.c:132,52'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:133,31'
              BranchSideFuncs:
                - smtp_params_rcpt_equal
                - smtp_address_equals
                - i_memcpy.558
            - BranchSide:      'smtp-server-transaction.c:135,2'
              BranchSideFuncs:
                - smtp_address_equals
                - smtp_params_rcpt_equal
                - i_memcpy.558
        - Branch String:   'smtp-server-transaction.c:132,7'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:134,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-transaction.c:135,2'
              BranchSideFuncs:
                - smtp_address_equals
                - smtp_params_rcpt_equal
                - i_memcpy.558
      Callsites:
        - Src:             'smtp-server-transaction.c:128,2'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:128,2'
          Dst:             i_panic
        - Src:             'smtp-server-transaction.c:129,2'
          Dst:             i_memcpy
        - Src:             'smtp-server-transaction.c:132,7'
          Dst:             smtp_address_equals
        - Src:             'smtp-server-transaction.c:133,7'
          Dst:             smtp_params_rcpt_equal
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_get_modifiable_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
        - buffer_get_modifiable_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:304,13'
          Dst:             array_count_i
        - Src:             '../../src/lib/array.h:305,9'
          Dst:             buffer_get_modifiable_data
    - functionName:    smtp_server_transaction_free
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _trans
      BBCount:         23
      ICount:          237
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - array_get_modifiable_i
        - array_is_created_i
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_unref
        - event_want_level
        - pool_unref
        - smtp_server_recipient_destroy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:86,30'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:87,6'
              BranchSideFuncs:
                - array_is_created_i.544
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
                - smtp_server_recipient_destroy
                - array_get_modifiable_i
            - BranchSide:      'smtp-server-transaction.c:90,14'
              BranchSideFuncs:
                - array_is_created_i.544
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
                - smtp_server_recipient_destroy
                - array_get_modifiable_i
        - Branch String:   'smtp-server-transaction.c:86,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:88,3'
              BranchSideFuncs:
                - array_is_created_i.544
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
                - smtp_server_recipient_destroy
                - array_get_modifiable_i
            - BranchSide:      'smtp-server-transaction.c:90,14'
              BranchSideFuncs:
                - array_is_created_i.544
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
                - smtp_server_recipient_destroy
                - array_get_modifiable_i
        - Branch String:   'smtp-server-transaction.c:91,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:92,11'
              BranchSideFuncs:
                - array_get_modifiable_i
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
                - smtp_server_recipient_destroy
            - BranchSide:      'smtp-server-transaction.c:94,18'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
                - smtp_server_recipient_destroy
        - Branch String:   'smtp-server-transaction.c:98,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:99,34'
              BranchSideFuncs:
                - smtp_server_recipient_destroy
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:101,7'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
        - Branch String:   'smtp-server-transaction.c:101,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:101,6'
              BranchSideFuncs:
                - event_unref
                - pool_unref.569
            - BranchSide:      'smtp-server-transaction.c:103,4'
              BranchSideFuncs:
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - event_unref
                - pool_unref.569
                - e_debug
        - Branch String:   'smtp-server-transaction.c:114,3'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:114,3'
              BranchSideFuncs:
                - e_debug
                - event_unref
                - pool_unref.569
            - BranchSide:      'smtp-server-transaction.c:114,3'
              BranchSideFuncs:
                - event_send_abort
                - event_unref
                - pool_unref.569
      Callsites:
        - Src:             'smtp-server-transaction.c:91,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-transaction.c:92,11'
          Dst:             array_get_modifiable_i
        - Src:             'smtp-server-transaction.c:99,3'
          Dst:             smtp_server_recipient_destroy
        - Src:             'smtp-server-transaction.c:103,4'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-transaction.c:114,3'
          Dst:             event_want_level
        - Src:             'smtp-server-transaction.c:114,3'
          Dst:             e_debug
        - Src:             'smtp-server-transaction.c:114,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-transaction.c:117,2'
          Dst:             event_unref
        - Src:             'smtp-server-transaction.c:118,2'
          Dst:             pool_unref
    - functionName:    smtp_server_transaction_update_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_str
        - event_set_append_log_prefix
        - smtp_address_encode
        - smtp_address_encode_raw
        - smtp_params_mail_add_to_event
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-transaction.c:18,2'
          Dst:             event_add_str
        - Src:             'smtp-server-transaction.c:19,2'
          Dst:             event_add_str
        - Src:             'smtp-server-transaction.c:21,9'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-transaction.c:20,2'
          Dst:             event_add_str
        - Src:             'smtp-server-transaction.c:23,9'
          Dst:             smtp_address_encode_raw
        - Src:             'smtp-server-transaction.c:22,2'
          Dst:             event_add_str
        - Src:             'smtp-server-transaction.c:24,2'
          Dst:             smtp_params_mail_add_to_event
        - Src:             'smtp-server-transaction.c:26,9'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-transaction.c:25,2'
          Dst:             event_set_append_log_prefix
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_transaction_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-transaction.c'
      linkageType:     externalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - mail_data
      BBCount:         19
      ICount:          202
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - e_debug
        - event_create
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - malloc_multiply_check
        - p_malloc
        - p_strdup_printf
        - pool_alloconly_create
        - smtp_address_clone
        - smtp_params_mail_copy
        - smtp_server_transaction_update_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-transaction.c:43,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:44,15'
              BranchSideFuncs:
                - smtp_address_clone
                - smtp_params_mail_copy
                - smtp_server_transaction_update_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
                - event_create
            - BranchSide:      'smtp-server-transaction.c:46,31'
              BranchSideFuncs:
                - p_strdup_printf
                - smtp_address_clone
                - smtp_params_mail_copy
                - smtp_server_transaction_update_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
                - event_create
        - Branch String:   'smtp-server-transaction.c:55,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:56,18'
              BranchSideFuncs:
                - event_create
                - smtp_server_transaction_update_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:58,18'
              BranchSideFuncs:
                - smtp_server_transaction_update_event
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-transaction.c:67,2'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:67,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-transaction.c:67,2'
              BranchSideFuncs:
                - event_send_abort
        - Branch String:   'smtp-server-transaction.c:69,30'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:69,30'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-transaction.c:70,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-transaction.c:69,6'
          Branch Sides:
            - BranchSide:      'smtp-server-transaction.c:69,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-transaction.c:71,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-transaction.c:37,9'
          Dst:             pool_alloconly_create
        - Src:             'smtp-server-transaction.c:38,10'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-transaction.c:38,10'
          Dst:             p_malloc
        - Src:             'smtp-server-transaction.c:46,15'
          Dst:             p_strdup_printf
        - Src:             'smtp-server-transaction.c:51,21'
          Dst:             smtp_address_clone
        - Src:             'smtp-server-transaction.c:52,2'
          Dst:             smtp_params_mail_copy
        - Src:             'smtp-server-transaction.c:56,18'
          Dst:             event_create
        - Src:             'smtp-server-transaction.c:61,2'
          Dst:             smtp_server_transaction_update_event
        - Src:             'smtp-server-transaction.c:64,3'
          Dst:             event_create_passthrough
        - Src:             'smtp-server-transaction.c:67,2'
          Dst:             event_want_level
        - Src:             'smtp-server-transaction.c:67,2'
          Dst:             e_debug
        - Src:             'smtp-server-transaction.c:67,2'
          Dst:             event_send_abort
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_get_disconnect_reason
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1113
      functionLinenumberEnd: 1127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          66
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - io_stream_get_disconnect_reason
        - ssl_iostream_get_last_error
        - ssl_iostream_is_handshaked
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1116,33'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1117,34'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - ssl_iostream_get_last_error
                - io_stream_get_disconnect_reason
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1125,41'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
        - Branch String:   'smtp-server-connection.c:1116,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1118,37'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
            - BranchSide:      'smtp-server-connection.c:1125,41'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
        - Branch String:   'smtp-server-connection.c:1119,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1121,35'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1123,2'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
      Callsites:
        - Src:             'smtp-server-connection.c:1117,7'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:1118,9'
          Dst:             ssl_iostream_get_last_error
        - Src:             'smtp-server-connection.c:1120,11'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:1125,9'
          Dst:             io_stream_get_disconnect_reason
    - functionName:    base64_encode_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/base64.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - enc
        - b64
        - flags
        - max_line_len
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/base64.h:68,23'
          Branch Sides:
            - BranchSide:      '../../src/lib/base64.h:68,23'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/base64.h:68,54'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    base64_scheme_encode
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/base64.h'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - b64
        - flags
        - max_line_len
        - src
        - src_size
        - dest
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - base64_encode_finish
        - base64_encode_init
        - base64_encode_more
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/base64.h:216,2'
          Dst:             base64_encode_init
        - Src:             '../../src/lib/base64.h:217,2'
          Dst:             base64_encode_more
        - Src:             '../../src/lib/base64.h:218,2'
          Dst:             base64_encode_finish
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    base64_encode
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/base64.h'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - src
        - src_size
        - dest
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - base64_scheme_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/base64.h:287,2'
          Dst:             base64_scheme_encode
    - functionName:    smtp_server_connection_init_session
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - base64_encode
        - guid_128_generate
        - i_panic
        - i_strdup
        - str_c
        - str_len
        - str_truncate
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:861,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:861,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:861,2'
              BranchSideFuncs:
                - str_len.690
                - str_truncate
                - str_c
                - i_strdup
      Callsites:
        - Src:             'smtp-server-connection.c:856,15'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:857,2'
          Dst:             guid_128_generate
        - Src:             'smtp-server-connection.c:858,2'
          Dst:             base64_encode
        - Src:             'smtp-server-connection.c:861,2'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:861,2'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:861,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:862,27'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:862,2'
          Dst:             str_truncate
        - Src:             'smtp-server-connection.c:864,30'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:864,21'
          Dst:             i_strdup
    - functionName:    smtp_command_limits_merge
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-command.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - limits
        - new_limits
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './smtp-command.h:30,6'
          Branch Sides:
            - BranchSide:      './smtp-command.h:31,33'
              BranchSideFuncs: []
            - BranchSide:      './smtp-command.h:32,6'
              BranchSideFuncs: []
        - Branch String:   './smtp-command.h:32,6'
          Branch Sides:
            - BranchSide:      './smtp-command.h:33,27'
              BranchSideFuncs: []
            - BranchSide:      './smtp-command.h:34,6'
              BranchSideFuncs: []
        - Branch String:   './smtp-command.h:34,6'
          Branch Sides:
            - BranchSide:      './smtp-command.h:34,6'
              BranchSideFuncs: []
            - BranchSide:      './smtp-command.h:35,27'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_connection_handle_command
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - cmd_name
        - cmd_params
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_server_command_execute
        - smtp_server_command_new
        - smtp_server_command_next_to_reply
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_ref
        - smtp_server_connection_timeout_update
        - smtp_server_connection_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:335,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:338,3'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
                - smtp_server_command_next_to_reply
            - BranchSide:      'smtp-server-connection.c:342,6'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
                - smtp_server_command_next_to_reply
        - Branch String:   'smtp-server-connection.c:342,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:343,9'
              BranchSideFuncs:
                - smtp_server_command_next_to_reply
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-connection.c:345,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_command_unref
        - Branch String:   'smtp-server-connection.c:348,43'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:348,46'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:348,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:329,8'
          Dst:             smtp_server_command_new
        - Src:             'smtp-server-connection.c:331,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-connection.c:333,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-connection.c:334,2'
          Dst:             smtp_server_command_execute
        - Src:             'smtp-server-connection.c:335,7'
          Dst:             smtp_server_connection_unref
        - Src:             'smtp-server-connection.c:338,3'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-connection.c:343,9'
          Dst:             smtp_server_command_next_to_reply
        - Src:             'smtp-server-connection.c:345,2'
          Dst:             smtp_server_connection_timeout_update
        - Src:             'smtp-server-connection.c:348,11'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_connection_ref
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1108
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1224
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
      BBCount:         32
      ICount:          189
      EdgeCount:       36
      CyclomaticComplexity: 6
      functionsReached:
        - connection_deinit
        - e_debug
        - event_send_abort
        - event_unref
        - event_want_level
        - i_panic
        - p_free_internal
        - pool_unref
        - smtp_server_connection_disconnect
      functionUses:    9
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1202,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1202,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1203,8'
              BranchSideFuncs:
                - smtp_server_connection_disconnect
                - event_want_level
                - event_send_abort
                - connection_deinit
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
                - e_debug
        - Branch String:   'smtp-server-connection.c:1203,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1204,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1206,36'
              BranchSideFuncs:
                - smtp_server_connection_disconnect
                - event_want_level
                - event_send_abort
                - connection_deinit
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
                - e_debug
        - Branch String:   'smtp-server-connection.c:1208,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1208,2'
              BranchSideFuncs:
                - e_debug
                - connection_deinit
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:1208,2'
              BranchSideFuncs:
                - event_send_abort
                - connection_deinit
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:1212,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1212,33'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:1215,2'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:1212,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1213,3'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:1215,2'
              BranchSideFuncs:
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - p_free_internal
                - event_unref
                - pool_unref.719
      Callsites:
        - Src:             'smtp-server-connection.c:1202,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1206,2'
          Dst:             smtp_server_connection_disconnect
        - Src:             'smtp-server-connection.c:1208,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1208,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1208,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1210,2'
          Dst:             connection_deinit
        - Src:             'smtp-server-connection.c:1215,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1216,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1217,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1218,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1219,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1220,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1221,2'
          Dst:             event_unref
        - Src:             'smtp-server-connection.c:1222,2'
          Dst:             pool_unref
    - functionName:    smtp_server_connection_timeout_update
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         17
      ICount:          83
      EdgeCount:       17
      CyclomaticComplexity: 2
      functionsReached:
        - i_unreached
        - smtp_server_connection_timeout_start
        - smtp_server_connection_timeout_stop
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:253,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:254,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_start
            - BranchSide:      'smtp-server-connection.c:258,10'
              BranchSideFuncs:
                - i_unreached
                - smtp_server_connection_timeout_stop
                - smtp_server_connection_timeout_stop
                - smtp_server_connection_timeout_start
        - Branch String:   'smtp-server-connection.c:258,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:258,2'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:260,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_start
            - BranchSide:      'smtp-server-connection.c:263,7'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-connection.c:271,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-connection.c:271,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
            - BranchSide:      'smtp-server-connection.c:275,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'smtp-server-connection.c:275,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-connection.c:263,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:265,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:267,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
      Callsites:
        - Src:             'smtp-server-connection.c:254,3'
          Dst:             smtp_server_connection_timeout_start
        - Src:             'smtp-server-connection.c:260,3'
          Dst:             smtp_server_connection_timeout_start
        - Src:             'smtp-server-connection.c:267,3'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:271,3'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:275,3'
          Dst:             i_unreached
    - functionName:    smtp_server_connection_timeout_start
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         21
      ICount:          122
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_connection_idle_timeout
        - timeout_add
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:229,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:230,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:232,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
        - Branch String:   'smtp-server-connection.c:232,28'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:232,28'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
            - BranchSide:      'smtp-server-connection.c:233,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
        - Branch String:   'smtp-server-connection.c:232,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:232,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
            - BranchSide:      'smtp-server-connection.c:234,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_add
                - e_debug
        - Branch String:   'smtp-server-connection.c:234,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:234,3'
              BranchSideFuncs:
                - e_debug
                - timeout_add
            - BranchSide:      'smtp-server-connection.c:234,3'
              BranchSideFuncs:
                - event_send_abort
                - timeout_add
        - Branch String:   'smtp-server-connection.c:236,19'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:236,19'
              BranchSideFuncs:
                - timeout_add
            - BranchSide:      'smtp-server-connection.c:236,19'
              BranchSideFuncs:
                - timeout_add
      Callsites:
        - Src:             'smtp-server-connection.c:234,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:234,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:234,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:236,19'
          Dst:             timeout_add
        - Src:             'smtp-server-connection.c:236,19'
          Dst:             smtp_server_connection_idle_timeout
    - functionName:    smtp_server_connection_timeout_stop
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - timeout_remove
      functionUses:    7
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:220,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:220,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_remove
                - e_debug
            - BranchSide:      'smtp-server-connection.c:221,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - timeout_remove
                - e_debug
        - Branch String:   'smtp-server-connection.c:221,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:221,3'
              BranchSideFuncs:
                - e_debug
                - timeout_remove
            - BranchSide:      'smtp-server-connection.c:221,3'
              BranchSideFuncs:
                - event_send_abort
                - timeout_remove
      Callsites:
        - Src:             'smtp-server-connection.c:221,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:221,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:221,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:223,3'
          Dst:             timeout_remove
    - functionName:    smtp_server_connection_idle_timeout
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_terminate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:214,2'
          Dst:             smtp_server_connection_terminate
    - functionName:    smtp_server_connection_terminate
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
        - enh_code
        - reason
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_terminate_full
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:1407,2'
          Dst:             smtp_server_connection_terminate_full
    - functionName:    smtp_server_connection_terminate_full
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1413
      functionLinenumberEnd: 1435
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
        - enh_code
        - reply_reason
        - log_reason
      BBCount:         18
      ICount:          123
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_connection_close
        - smtp_server_connection_reply_lines
        - t_pop
        - t_push
        - t_strconcat
        - t_strsplit_spaces
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1419,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1420,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1422,2'
              BranchSideFuncs:
                - t_push
                - t_strsplit_spaces
                - t_strconcat
                - smtp_server_connection_reply_lines
                - smtp_server_connection_close
                - t_pop
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-connection.c:1422,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1422,2'
              BranchSideFuncs:
                - t_push
                - t_strsplit_spaces
                - t_strconcat
                - smtp_server_connection_reply_lines
                - smtp_server_connection_close
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1422,2'
              BranchSideFuncs:
                - t_push
                - t_strsplit_spaces
                - t_strconcat
                - smtp_server_connection_reply_lines
                - smtp_server_connection_close
                - t_pop
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-connection.c:1422,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1422,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1424,2'
              BranchSideFuncs:
                - t_push
                - t_strsplit_spaces
                - t_strconcat
                - smtp_server_connection_reply_lines
                - smtp_server_connection_close
                - t_pop
                - i_panic
        - Branch String:   'smtp-server-connection.c:1434,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1434,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1434,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1422,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1424,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1426,18'
          Dst:             t_strsplit_spaces
        - Src:             'smtp-server-connection.c:1427,21'
          Dst:             t_strconcat
        - Src:             'smtp-server-connection.c:1430,3'
          Dst:             smtp_server_connection_reply_lines
        - Src:             'smtp-server-connection.c:1433,3'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:1434,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1434,4'
          Dst:             i_panic
    - functionName:    smtp_server_connection_reply_lines
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1251
      functionLinenumberEnd: 1271
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - status
        - enh_code
        - text_lines
      BBCount:         17
      ICount:          118
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - o_stream_nsend
        - smtp_reply_log
        - smtp_reply_parse_enhanced_code
        - smtp_reply_write
        - str_data
        - str_len
        - t_pop
        - t_push
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1258,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1260,9'
              BranchSideFuncs:
                - t_push
                - event_want_level
                - event_send_abort
                - t_str_new
                - smtp_reply_write
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - i_panic
                - smtp_reply_log
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1262,2'
              BranchSideFuncs:
                - t_push
                - event_want_level
                - event_send_abort
                - t_str_new
                - smtp_reply_write
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - i_panic
                - smtp_reply_log
                - e_debug
        - Branch String:   'smtp-server-connection.c:1265,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1265,3'
              BranchSideFuncs:
                - smtp_reply_log
                - e_debug
                - t_str_new
                - smtp_reply_write
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1265,3'
              BranchSideFuncs:
                - event_send_abort
                - t_str_new
                - smtp_reply_write
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - i_panic
        - Branch String:   'smtp-server-connection.c:1270,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1270,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1270,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1258,7'
          Dst:             smtp_reply_parse_enhanced_code
        - Src:             'smtp-server-connection.c:1262,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1265,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1265,3'
          Dst:             smtp_reply_log
        - Src:             'smtp-server-connection.c:1265,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1265,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1267,9'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1268,3'
          Dst:             smtp_reply_write
        - Src:             'smtp-server-connection.c:1269,37'
          Dst:             str_data
        - Src:             'smtp-server-connection.c:1269,52'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:1269,3'
          Dst:             o_stream_nsend
        - Src:             'smtp-server-connection.c:1270,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1270,4'
          Dst:             i_panic
    - functionName:    smtp_server_connection_close
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1391
      functionLinenumberEnd: 1402
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
        - reason
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_connection_disconnect
        - smtp_server_connection_unref
      functionUses:    12
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1396,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1397,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1398,2'
              BranchSideFuncs:
                - smtp_server_connection_disconnect
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-connection.c:1400,2'
          Dst:             smtp_server_connection_disconnect
        - Src:             'smtp-server-connection.c:1401,2'
          Dst:             smtp_server_connection_unref
    - functionName:    smtp_server_connection_disconnect
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1132
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - reason
      BBCount:         43
      ICount:          308
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - connection_disconnect
        - e_debug
        - event_send_abort
        - event_want_level
        - i_stream_unref
        - io_remove
        - o_stream_uncork
        - o_stream_unref
        - pool_unref
        - smtp_command_parser_deinit
        - smtp_server_command_abort
        - smtp_server_connection_get_disconnect_reason
        - smtp_server_connection_reset_state
        - smtp_server_connection_timeout_stop
        - smtp_server_connection_update_stats
        - ssl_iostream_destroy
        - t_str_oneline
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1135,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1136,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1137,2'
              BranchSideFuncs:
                - t_str_oneline
                - t_strdup_printf
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
                - t_strdup_printf
                - smtp_server_connection_get_disconnect_reason
        - Branch String:   'smtp-server-connection.c:1139,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1140,57'
              BranchSideFuncs:
                - smtp_server_connection_get_disconnect_reason
                - t_strdup_printf
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1142,26'
              BranchSideFuncs:
                - t_str_oneline
                - t_strdup_printf
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
                - t_strdup_printf
        - Branch String:   'smtp-server-connection.c:1145,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1145,21'
              BranchSideFuncs:
                - t_strdup_printf
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
                - t_strdup_printf
            - BranchSide:      'smtp-server-connection.c:1150,7'
              BranchSideFuncs:
                - t_strdup_printf
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:1145,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1148,4'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1150,7'
              BranchSideFuncs:
                - t_strdup_printf
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:1150,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1151,45'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1155,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:1155,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1155,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
            - BranchSide:      'smtp-server-connection.c:1155,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_update_stats
                - smtp_server_connection_reset_state
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
                - smtp_server_command_abort
        - Branch String:   'smtp-server-connection.c:1165,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1166,14'
              BranchSideFuncs:
                - smtp_server_command_abort
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
            - BranchSide:      'smtp-server-connection.c:1171,38'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
                - o_stream_uncork
        - Branch String:   'smtp-server-connection.c:1172,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1173,19'
              BranchSideFuncs:
                - o_stream_uncork
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
            - BranchSide:      'smtp-server-connection.c:1174,6'
              BranchSideFuncs:
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
                - smtp_command_parser_deinit
        - Branch String:   'smtp-server-connection.c:1174,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1175,31'
              BranchSideFuncs:
                - smtp_command_parser_deinit
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:1176,24'
              BranchSideFuncs:
                - ssl_iostream_destroy
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:1177,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1177,2'
              BranchSideFuncs:
                - pool_unref.719
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
            - BranchSide:      'smtp-server-connection.c:1179,6'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
        - Branch String:   'smtp-server-connection.c:1179,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1180,6'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
                - io_remove
            - BranchSide:      'smtp-server-connection.c:1186,7'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
        - Branch String:   'smtp-server-connection.c:1179,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1182,14'
              BranchSideFuncs:
                - io_remove
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
            - BranchSide:      'smtp-server-connection.c:1186,7'
              BranchSideFuncs:
                - connection_disconnect
                - io_remove
                - i_stream_unref
                - o_stream_unref
        - Branch String:   'smtp-server-connection.c:1186,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1187,26'
              BranchSideFuncs:
                - io_remove
                - i_stream_unref
                - o_stream_unref
            - BranchSide:      'smtp-server-connection.c:1189,22'
              BranchSideFuncs:
                - io_remove
                - i_stream_unref
                - o_stream_unref
      Callsites:
        - Src:             'smtp-server-connection.c:1140,12'
          Dst:             smtp_server_connection_get_disconnect_reason
        - Src:             'smtp-server-connection.c:1142,12'
          Dst:             t_str_oneline
        - Src:             'smtp-server-connection.c:1147,12'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:1151,12'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:1155,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1155,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1155,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1158,2'
          Dst:             smtp_server_connection_update_stats
        - Src:             'smtp-server-connection.c:1161,2'
          Dst:             smtp_server_connection_reset_state
        - Src:             'smtp-server-connection.c:1167,3'
          Dst:             smtp_server_command_abort
        - Src:             'smtp-server-connection.c:1171,2'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:1173,3'
          Dst:             o_stream_uncork
        - Src:             'smtp-server-connection.c:1175,3'
          Dst:             smtp_command_parser_deinit
        - Src:             'smtp-server-connection.c:1176,2'
          Dst:             ssl_iostream_destroy
        - Src:             'smtp-server-connection.c:1177,2'
          Dst:             pool_unref
        - Src:             'smtp-server-connection.c:1182,3'
          Dst:             io_remove
        - Src:             'smtp-server-connection.c:1187,3'
          Dst:             connection_disconnect
        - Src:             'smtp-server-connection.c:1190,3'
          Dst:             io_remove
        - Src:             'smtp-server-connection.c:1191,3'
          Dst:             i_stream_unref
        - Src:             'smtp-server-connection.c:1192,3'
          Dst:             o_stream_unref
    - functionName:    smtp_server_connection_update_stats
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - connection_update_counters
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:51,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:52,23'
              BranchSideFuncs:
                - connection_update_counters
            - BranchSide:      'smtp-server-connection.c:53,6'
              BranchSideFuncs:
                - connection_update_counters
        - Branch String:   'smtp-server-connection.c:53,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:53,6'
              BranchSideFuncs:
                - connection_update_counters
            - BranchSide:      'smtp-server-connection.c:54,24'
              BranchSideFuncs:
                - connection_update_counters
      Callsites:
        - Src:             'smtp-server-connection.c:55,2'
          Dst:             connection_update_counters
    - functionName:    smtp_server_connection_reset_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1482
      functionLinenumberEnd: 1502
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         13
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_stream_destroy
        - p_free_internal
        - smtp_server_connection_set_state
        - smtp_server_transaction_free
      functionUses:    6
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1483,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1483,2'
              BranchSideFuncs:
                - e_debug
                - p_free_internal
                - i_stream_destroy
                - i_stream_destroy
                - smtp_server_connection_set_state
                - smtp_server_transaction_free
            - BranchSide:      'smtp-server-connection.c:1483,2'
              BranchSideFuncs:
                - event_send_abort
                - p_free_internal
                - i_stream_destroy
                - i_stream_destroy
                - smtp_server_connection_set_state
                - smtp_server_transaction_free
        - Branch String:   'smtp-server-connection.c:1487,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1487,6'
              BranchSideFuncs:
                - smtp_server_transaction_free
                - i_stream_destroy
                - i_stream_destroy
                - smtp_server_connection_set_state
            - BranchSide:      'smtp-server-connection.c:1488,33'
              BranchSideFuncs:
                - smtp_server_transaction_free
                - i_stream_destroy
                - i_stream_destroy
                - smtp_server_connection_set_state
      Callsites:
        - Src:             'smtp-server-connection.c:1483,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1483,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1483,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1485,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1488,3'
          Dst:             smtp_server_transaction_free
        - Src:             'smtp-server-connection.c:1495,2'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-connection.c:1496,2'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-connection.c:1501,2'
          Dst:             smtp_server_connection_set_state
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    8
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    18
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_set_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1455
      functionLinenumberEnd: 1471
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - state
        - args
      BBCount:         18
      ICount:          125
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - i_strdup
        - null_strcmp
        - p_free_internal
      functionUses:    11
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1458,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1459,23'
              BranchSideFuncs:
                - null_strcmp
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1462,18'
              BranchSideFuncs:
                - null_strcmp
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1462,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1463,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1468,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1468,14'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1468,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1468,14'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1468,41'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1468,41'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1469,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1468,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1468,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1470,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1462,6'
          Dst:             null_strcmp
        - Src:             'smtp-server-connection.c:1463,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1464,22'
          Dst:             i_strdup
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_handle_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         92
      ICount:          480
      EdgeCount:       118
      CyclomaticComplexity: 28
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_stream_get_disconnect_reason
        - i_unreached
        - smtp_command_parse_next
        - smtp_command_parser_pending_data
        - smtp_server_command_fail
        - smtp_server_command_new_invalid
        - smtp_server_command_ready_to_reply
        - smtp_server_connection_check_pipeline
        - smtp_server_connection_close
        - smtp_server_connection_handle_command
        - smtp_server_connection_input_halt
        - smtp_server_connection_timeout_reset
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:474,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:476,6'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:481,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:476,5'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:475,19'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:478,5'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:485,24'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:485,2'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:485,28'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:485,47'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:485,2'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:485,50'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:485,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:485,2'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:486,3'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:486,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:490,8'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:531,7'
              BranchSideFuncs:
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
        - Branch String:   'smtp-server-connection.c:490,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:493,40'
              BranchSideFuncs:
                - smtp_server_command_ready_to_reply
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - e_debug
            - BranchSide:      'smtp-server-connection.c:497,4'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - smtp_server_command_ready_to_reply
                - e_debug
        - Branch String:   'smtp-server-connection.c:497,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:497,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:497,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:503,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:505,5'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:507,8'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:507,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:508,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:511,8'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:511,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:512,5'
              BranchSideFuncs:
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
            - BranchSide:      'smtp-server-connection.c:515,8'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:515,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:516,5'
              BranchSideFuncs:
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
            - BranchSide:      'smtp-server-connection.c:518,47'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:518,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:519,39'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:523,8'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:523,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:486,3'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:525,8'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:525,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:524,21'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:527,7'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:531,15'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:531,18'
              BranchSideFuncs:
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
            - BranchSide:      'smtp-server-connection.c:552,7'
              BranchSideFuncs:
                - smtp_command_parse_next
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
        - Branch String:   'smtp-server-connection.c:531,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:533,36'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
            - BranchSide:      'smtp-server-connection.c:552,7'
              BranchSideFuncs:
                - smtp_command_parse_next
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
        - Branch String:   'smtp-server-connection.c:534,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:534,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:534,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:537,41'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:538,8'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:542,41'
              BranchSideFuncs:
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:537,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:542,41'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:546,5'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-connection.c:552,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:555,4'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_command_parse_next
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
            - BranchSide:      'smtp-server-connection.c:590,7'
              BranchSideFuncs:
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-connection.c:555,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:555,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
            - BranchSide:      'smtp-server-connection.c:555,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_command_parse_next
                - event_want_level
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
        - Branch String:   'smtp-server-connection.c:558,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:560,5'
              BranchSideFuncs:
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-connection.c:563,43'
              BranchSideFuncs:
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-connection.c:569,43'
              BranchSideFuncs:
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-connection.c:579,5'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:583,41'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:586,5'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-connection.c:590,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:591,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:592,7'
              BranchSideFuncs:
                - smtp_command_parse_next
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-connection.c:592,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:592,29'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-connection.c:593,38'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-connection.c:592,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:593,38'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-connection.c:597,7'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:597,16'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:485,2'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:597,19'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:597,43'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:485,2'
              BranchSideFuncs:
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_command_parse_next
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:598,41'
              BranchSideFuncs:
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_command_parse_next
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
        - Branch String:   'smtp-server-connection.c:597,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:485,2'
              BranchSideFuncs:
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_command_ready_to_reply
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
            - BranchSide:      'smtp-server-connection.c:601,39'
              BranchSideFuncs:
                - smtp_server_command_ready_to_reply
                - smtp_command_parse_next
                - smtp_command_parser_pending_data
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_connection_close
                - smtp_server_connection_close
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - smtp_server_command_new_invalid
                - smtp_server_command_fail
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - event_want_level
                - event_send_abort
                - smtp_server_connection_input_halt
                - smtp_server_connection_close
                - e_debug
                - event_want_level
                - event_send_abort
                - smtp_server_connection_handle_command
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - e_debug
                - smtp_server_command_ready_to_reply
      Callsites:
        - Src:             'smtp-server-connection.c:481,2'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-connection.c:486,17'
          Dst:             smtp_command_parse_next
        - Src:             'smtp-server-connection.c:493,5'
          Dst:             smtp_server_command_ready_to_reply
        - Src:             'smtp-server-connection.c:497,4'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:497,4'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:497,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:503,9'
          Dst:             smtp_server_connection_handle_command
        - Src:             'smtp-server-connection.c:518,9'
          Dst:             smtp_server_connection_check_pipeline
        - Src:             'smtp-server-connection.c:519,5'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:533,5'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-server-connection.c:534,4'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:534,4'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:534,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:542,5'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:547,5'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:555,4'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:555,4'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:555,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:563,11'
          Dst:             smtp_server_command_new_invalid
        - Src:             'smtp-server-connection.c:564,5'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-connection.c:569,11'
          Dst:             smtp_server_command_new_invalid
        - Src:             'smtp-server-connection.c:570,5'
          Dst:             smtp_server_command_fail
        - Src:             'smtp-server-connection.c:579,5'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:583,5'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:586,5'
          Dst:             i_unreached
        - Src:             'smtp-server-connection.c:593,4'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:598,8'
          Dst:             smtp_command_parser_pending_data
        - Src:             'smtp-server-connection.c:601,4'
          Dst:             smtp_server_command_ready_to_reply
    - functionName:    smtp_server_connection_timeout_reset
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - timeout_reset
      functionUses:    5
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:244,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:244,6'
              BranchSideFuncs:
                - timeout_reset
            - BranchSide:      'smtp-server-connection.c:245,17'
              BranchSideFuncs:
                - timeout_reset
      Callsites:
        - Src:             'smtp-server-connection.c:245,3'
          Dst:             timeout_reset
    - functionName:    smtp_server_connection_check_pipeline
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         21
      ICount:          114
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:70,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:71,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-connection.c:77,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:71,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:71,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:72,7'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:72,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:74,12'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:75,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'smtp-server-connection.c:77,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:78,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:83,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:78,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:78,3'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-connection.c:78,3'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-connection.c:71,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:78,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:78,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:78,3'
          Dst:             event_send_abort
    - functionName:    smtp_server_connection_input_halt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_input_halt
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:88,2'
          Dst:             connection_input_halt
    - functionName:    smtp_server_connection_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 607
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
      BBCount:         77
      ICount:          441
      EdgeCount:       100
      CyclomaticComplexity: 25
      functionsReached:
        - e_error
        - i_panic
        - i_stream_get_error
        - i_stream_get_name
        - i_stream_read
        - smtp_server_connection_check_pipeline
        - smtp_server_connection_close
        - smtp_server_connection_handle_input
        - smtp_server_connection_handle_output_error
        - smtp_server_connection_input_halt
        - smtp_server_connection_input_lock
        - smtp_server_connection_ready
        - smtp_server_connection_ref
        - smtp_server_connection_ssl_init
        - smtp_server_connection_timeout_reset
        - smtp_server_connection_unref
        - ssl_iostream_is_handshaked
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:612,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:612,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:614,6'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_ssl_init
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:614,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:615,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:617,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_ssl_init
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:619,22'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:619,25'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_ssl_init
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:626,2'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_panic
        - Branch String:   'smtp-server-connection.c:619,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:620,39'
              BranchSideFuncs:
                - smtp_server_connection_ssl_init
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:626,2'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_panic
        - Branch String:   'smtp-server-connection.c:620,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:621,4'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:625,2'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_panic
        - Branch String:   'smtp-server-connection.c:626,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:626,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:630,6'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
        - Branch String:   'smtp-server-connection.c:630,33'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:631,34'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
            - BranchSide:      'smtp-server-connection.c:665,7'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
        - Branch String:   'smtp-server-connection.c:630,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:633,3'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
            - BranchSide:      'smtp-server-connection.c:665,7'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
        - Branch String:   'smtp-server-connection.c:633,54'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:633,3'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_stream_read
            - BranchSide:      'smtp-server-connection.c:634,10'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
                - ssl_iostream_is_handshaked
                - i_stream_read
        - Branch String:   'smtp-server-connection.c:633,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:635,35'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_stream_read
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
            - BranchSide:      'smtp-server-connection.c:638,7'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
        - Branch String:   'smtp-server-connection.c:635,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:633,3'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
            - BranchSide:      'smtp-server-connection.c:636,5'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
        - Branch String:   'smtp-server-connection.c:638,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:639,23'
              BranchSideFuncs:
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
                - i_panic
            - BranchSide:      'smtp-server-connection.c:654,35'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - i_panic
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
        - Branch String:   'smtp-server-connection.c:642,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:642,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:646,5'
              BranchSideFuncs:
                - i_stream_get_name
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
                - i_stream_get_error
        - Branch String:   'smtp-server-connection.c:648,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:643,24'
              BranchSideFuncs:
                - i_stream_get_error
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-connection.c:649,25'
              BranchSideFuncs:
                - i_stream_get_error
                - t_strdup_printf
                - e_error
                - smtp_server_connection_close
        - Branch String:   'smtp-server-connection.c:654,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:656,4'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:659,7'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
                - smtp_server_connection_input_lock
        - Branch String:   'smtp-server-connection.c:656,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:656,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:657,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:659,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:660,38'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:663,2'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_ready
        - Branch String:   'smtp-server-connection.c:665,31'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:666,7'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:670,45'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:666,34'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:667,34'
              BranchSideFuncs:
                - smtp_server_connection_ready
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:668,32'
              BranchSideFuncs:
                - smtp_server_connection_ready
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:665,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:668,32'
              BranchSideFuncs:
                - smtp_server_connection_ready
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:670,45'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - smtp_server_connection_input_halt
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:670,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:671,37'
              BranchSideFuncs:
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:675,29'
              BranchSideFuncs:
                - smtp_server_connection_ref
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:677,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:678,6'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:680,38'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:677,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:679,3'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:680,38'
              BranchSideFuncs:
                - smtp_server_connection_handle_input
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:681,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:682,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:684,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:681,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:683,3'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:684,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:688,32'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:688,35'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:690,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
        - Branch String:   'smtp-server-connection.c:688,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:689,60'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-connection.c:690,2'
              BranchSideFuncs:
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-connection.c:612,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:617,2'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-connection.c:620,7'
          Dst:             smtp_server_connection_ssl_init
        - Src:             'smtp-server-connection.c:621,4'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:626,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:631,7'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:633,17'
          Dst:             i_stream_read
        - Src:             'smtp-server-connection.c:635,8'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:642,4'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:647,5'
          Dst:             i_stream_get_name
        - Src:             'smtp-server-connection.c:649,6'
          Dst:             i_stream_get_error
        - Src:             'smtp-server-connection.c:643,24'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:650,4'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:651,4'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-connection.c:654,8'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:656,4'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:660,4'
          Dst:             smtp_server_connection_input_lock
        - Src:             'smtp-server-connection.c:667,7'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:668,3'
          Dst:             smtp_server_connection_ready
        - Src:             'smtp-server-connection.c:670,7'
          Dst:             smtp_server_connection_check_pipeline
        - Src:             'smtp-server-connection.c:671,3'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:675,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-connection.c:680,2'
          Dst:             smtp_server_connection_handle_input
        - Src:             'smtp-server-connection.c:689,17'
          Dst:             smtp_server_connection_handle_output_error
        - Src:             'smtp-server-connection.c:690,2'
          Dst:             smtp_server_connection_unref
    - functionName:    smtp_server_connection_ssl_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         30
      ICount:          254
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - e_debug
        - e_error
        - event_send_abort
        - event_want_level
        - i_stream_destroy
        - i_stream_ref
        - io_stream_autocreate_ssl_server
        - io_stream_create_ssl_server
        - o_stream_destroy
        - o_stream_ref
        - smtp_server_connection_input_halt
        - smtp_server_connection_input_resume
        - smtp_server_connection_ready
        - smtp_server_connection_sni_callback
        - smtp_server_connection_streams_changed
        - ssl_iostream_context_unref
        - ssl_iostream_get_last_error
        - ssl_iostream_handshake
        - ssl_iostream_is_handshaked
        - ssl_iostream_server_context_cache_get
        - ssl_iostream_set_sni_callback
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:407,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:407,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_input_halt
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
                - io_stream_autocreate_ssl_server
                - i_stream_ref
                - o_stream_ref
                - i_stream_destroy
                - o_stream_destroy
            - BranchSide:      'smtp-server-connection.c:407,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_input_halt
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
                - io_stream_autocreate_ssl_server
                - i_stream_ref
                - o_stream_ref
                - i_stream_destroy
                - o_stream_destroy
        - Branch String:   'smtp-server-connection.c:409,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:411,16'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - i_stream_destroy
                - o_stream_destroy
                - smtp_server_connection_input_halt
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
                - io_stream_autocreate_ssl_server
            - BranchSide:      'smtp-server-connection.c:419,36'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
                - io_stream_autocreate_ssl_server
        - Branch String:   'smtp-server-connection.c:420,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:421,71'
              BranchSideFuncs:
                - io_stream_autocreate_ssl_server
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
            - BranchSide:      'smtp-server-connection.c:427,51'
              BranchSideFuncs:
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
        - Branch String:   'smtp-server-connection.c:427,13'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:429,7'
              BranchSideFuncs:
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
            - BranchSide:      'smtp-server-connection.c:431,37'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
                - e_error
        - Branch String:   'smtp-server-connection.c:436,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:437,3'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'smtp-server-connection.c:443,3'
              BranchSideFuncs:
                - ssl_iostream_set_sni_callback
                - smtp_server_connection_input_resume
                - ssl_iostream_handshake
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
                - ssl_iostream_get_last_error
                - e_error
        - Branch String:   'smtp-server-connection.c:446,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:447,3'
              BranchSideFuncs:
                - ssl_iostream_get_last_error
                - e_error
            - BranchSide:      'smtp-server-connection.c:452,2'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
                - smtp_server_connection_streams_changed
        - Branch String:   'smtp-server-connection.c:455,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:456,42'
              BranchSideFuncs:
                - smtp_server_connection_streams_changed
            - BranchSide:      'smtp-server-connection.c:457,11'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_ready
      Callsites:
        - Src:             'smtp-server-connection.c:407,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:407,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:407,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:411,3'
          Dst:             i_stream_ref
        - Src:             'smtp-server-connection.c:412,3'
          Dst:             o_stream_ref
        - Src:             'smtp-server-connection.c:413,3'
          Dst:             i_stream_destroy
        - Src:             'smtp-server-connection.c:414,3'
          Dst:             o_stream_destroy
        - Src:             'smtp-server-connection.c:419,2'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-connection.c:424,9'
          Dst:             io_stream_autocreate_ssl_server
        - Src:             'smtp-server-connection.c:427,13'
          Dst:             ssl_iostream_server_context_cache_get
        - Src:             'smtp-server-connection.c:431,9'
          Dst:             io_stream_create_ssl_server
        - Src:             'smtp-server-connection.c:434,3'
          Dst:             ssl_iostream_context_unref
        - Src:             'smtp-server-connection.c:437,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:442,2'
          Dst:             ssl_iostream_set_sni_callback
        - Src:             'smtp-server-connection.c:442,2'
          Dst:             smtp_server_connection_sni_callback
        - Src:             'smtp-server-connection.c:444,2'
          Dst:             smtp_server_connection_input_resume
        - Src:             'smtp-server-connection.c:446,6'
          Dst:             ssl_iostream_handshake
        - Src:             'smtp-server-connection.c:447,3'
          Dst:             ssl_iostream_get_last_error
        - Src:             'smtp-server-connection.c:447,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:456,3'
          Dst:             smtp_server_connection_streams_changed
        - Src:             'smtp-server-connection.c:458,4'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:459,3'
          Dst:             smtp_server_connection_ready
    - functionName:    smtp_server_connection_input_lock
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_input_halt
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:129,2'
          Dst:             smtp_server_connection_input_halt
    - functionName:    smtp_server_connection_ready
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         12
      ICount:          119
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - o_stream_cork
        - o_stream_set_flush_callback
        - o_stream_uncork
        - smtp_command_parser_init
        - smtp_server_connection_output
        - smtp_server_connection_send_line
        - smtp_server_connection_update_rawlog
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:294,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:296,2'
              BranchSideFuncs:
                - o_stream_uncork
            - BranchSide:      'smtp-server-connection.c:296,13'
              BranchSideFuncs:
                - smtp_server_connection_send_line
                - o_stream_uncork
                - smtp_server_connection_send_line
        - Branch String:   'smtp-server-connection.c:296,13'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:301,4'
              BranchSideFuncs:
                - smtp_server_connection_send_line
                - o_stream_uncork
            - BranchSide:      'smtp-server-connection.c:304,4'
              BranchSideFuncs:
                - smtp_server_connection_send_line
                - o_stream_uncork
        - Branch String:   'smtp-server-connection.c:307,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:307,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:308,19'
              BranchSideFuncs:
                - o_stream_uncork
      Callsites:
        - Src:             'smtp-server-connection.c:286,2'
          Dst:             smtp_server_connection_update_rawlog
        - Src:             'smtp-server-connection.c:288,22'
          Dst:             smtp_command_parser_init
        - Src:             'smtp-server-connection.c:290,2'
          Dst:             o_stream_set_flush_callback
        - Src:             'smtp-server-connection.c:290,2'
          Dst:             smtp_server_connection_output
        - Src:             'smtp-server-connection.c:293,2'
          Dst:             o_stream_cork
        - Src:             'smtp-server-connection.c:300,3'
          Dst:             smtp_server_connection_send_line
        - Src:             'smtp-server-connection.c:303,3'
          Dst:             smtp_server_connection_send_line
        - Src:             'smtp-server-connection.c:308,3'
          Dst:             o_stream_uncork
    - functionName:    smtp_server_connection_handle_output_error
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_get_disconnect_reason
        - smtp_server_connection_close
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:709,3'
          Dst:             o_stream_get_disconnect_reason
        - Src:             'smtp-server-connection.c:708,2'
          Dst:             smtp_server_connection_close
    - functionName:    smtp_server_connection_update_rawlog
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         14
      ICount:          92
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - iostream_rawlog_create
        - stat
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:154,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:155,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:157,7'
              BranchSideFuncs:
                - stat
                - iostream_rawlog_create
        - Branch String:   'smtp-server-connection.c:157,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:158,3'
              BranchSideFuncs:
                - iostream_rawlog_create
            - BranchSide:      'smtp-server-connection.c:162,6'
              BranchSideFuncs:
                - iostream_rawlog_create
        - Branch String:   'smtp-server-connection.c:159,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:160,4'
              BranchSideFuncs:
                - iostream_rawlog_create
            - BranchSide:      'smtp-server-connection.c:161,2'
              BranchSideFuncs:
                - iostream_rawlog_create
        - Branch String:   'smtp-server-connection.c:162,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:162,6'
              BranchSideFuncs:
                - iostream_rawlog_create
            - BranchSide:      'smtp-server-connection.c:163,26'
              BranchSideFuncs:
                - iostream_rawlog_create
      Callsites:
        - Src:             'smtp-server-connection.c:159,7'
          Dst:             stat
        - Src:             'smtp-server-connection.c:163,3'
          Dst:             iostream_rawlog_create
    - functionName:    smtp_server_connection_output
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         23
      ICount:          137
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - o_stream_cork
        - o_stream_uncork_flush
        - smtp_server_connection_flush
        - smtp_server_connection_handle_output_error
        - smtp_server_connection_ref
        - smtp_server_connection_send_replies
        - smtp_server_connection_timeout_reset
        - smtp_server_connection_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:776,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:776,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_ref
                - o_stream_cork
                - smtp_server_connection_flush
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - o_stream_uncork_flush
                - smtp_server_connection_timeout_reset
                - smtp_server_connection_send_replies
            - BranchSide:      'smtp-server-connection.c:776,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_ref
                - o_stream_cork
                - smtp_server_connection_flush
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - o_stream_uncork_flush
                - smtp_server_connection_timeout_reset
                - smtp_server_connection_send_replies
        - Branch String:   'smtp-server-connection.c:781,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:782,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_reset
                - smtp_server_connection_send_replies
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - o_stream_uncork_flush
            - BranchSide:      'smtp-server-connection.c:785,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - o_stream_uncork_flush
        - Branch String:   'smtp-server-connection.c:785,15'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:785,19'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
                - o_stream_uncork_flush
            - BranchSide:      'smtp-server-connection.c:787,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:785,32'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:785,35'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:787,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:785,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:786,31'
              BranchSideFuncs:
                - o_stream_uncork_flush
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:787,6'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:787,32'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:787,35'
              BranchSideFuncs:
                - smtp_server_connection_unref
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:787,32'
              BranchSideFuncs:
                - smtp_server_connection_unref
        - Branch String:   'smtp-server-connection.c:787,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:787,6'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_unref
            - BranchSide:      'smtp-server-connection.c:788,46'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
                - smtp_server_connection_unref
      Callsites:
        - Src:             'smtp-server-connection.c:776,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:776,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:776,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:778,2'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-connection.c:779,2'
          Dst:             o_stream_cork
        - Src:             'smtp-server-connection.c:780,8'
          Dst:             smtp_server_connection_flush
        - Src:             'smtp-server-connection.c:782,3'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-connection.c:783,3'
          Dst:             smtp_server_connection_send_replies
        - Src:             'smtp-server-connection.c:786,9'
          Dst:             o_stream_uncork_flush
        - Src:             'smtp-server-connection.c:788,3'
          Dst:             smtp_server_connection_handle_output_error
        - Src:             'smtp-server-connection.c:791,2'
          Dst:             smtp_server_connection_unref
    - functionName:    smtp_server_connection_send_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1228
      functionLinenumberEnd: 1245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - fmt
      BBCount:         14
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - o_stream_nsend
        - str_append
        - str_c
        - str_data
        - str_len
        - str_vprintfa
        - t_pop
        - t_push
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1239,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1239,3'
              BranchSideFuncs:
                - str_c
                - e_debug
                - str_append.765
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1239,3'
              BranchSideFuncs:
                - event_send_abort
                - str_append.765
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - i_panic
        - Branch String:   'smtp-server-connection.c:1243,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1243,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1243,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1233,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1236,9'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1237,3'
          Dst:             str_vprintfa
        - Src:             'smtp-server-connection.c:1239,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1239,3'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:1239,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1239,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1241,3'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1242,37'
          Dst:             str_data
        - Src:             'smtp-server-connection.c:1242,52'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:1242,3'
          Dst:             o_stream_nsend
        - Src:             'smtp-server-connection.c:1243,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1243,4'
          Dst:             i_panic
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    smtp_server_connection_flush
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 760
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - o_stream_flush
        - smtp_server_connection_handle_output_error
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:764,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:765,7'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:769,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:765,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:766,47'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:767,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:764,13'
          Dst:             o_stream_flush
        - Src:             'smtp-server-connection.c:766,4'
          Dst:             smtp_server_connection_handle_output_error
    - functionName:    smtp_server_connection_send_replies
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 757
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_server_connection_input_resume
        - smtp_server_connection_next_reply
        - smtp_server_connection_timeout_update
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:751,29'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:751,2'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
                - smtp_server_connection_next_reply
            - BranchSide:      'smtp-server-connection.c:751,66'
              BranchSideFuncs:
                - smtp_server_connection_next_reply
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
        - Branch String:   'smtp-server-connection.c:751,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:751,10'
              BranchSideFuncs:
                - smtp_server_connection_next_reply
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
            - BranchSide:      'smtp-server-connection.c:753,40'
              BranchSideFuncs:
                - smtp_server_connection_timeout_update
                - smtp_server_connection_input_resume
      Callsites:
        - Src:             'smtp-server-connection.c:751,32'
          Dst:             smtp_server_connection_next_reply
        - Src:             'smtp-server-connection.c:753,2'
          Dst:             smtp_server_connection_timeout_update
        - Src:             'smtp-server-connection.c:756,2'
          Dst:             smtp_server_connection_input_resume
    - functionName:    o_stream_uncork_flush
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/ostream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_flush
        - o_stream_uncork
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/ostream.h:176,2'
          Dst:             o_stream_uncork
        - Src:             '../../src/lib/ostream.h:177,9'
          Dst:             o_stream_flush
    - functionName:    smtp_server_connection_next_reply
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_command_send_replies
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:718,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:720,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'smtp-server-connection.c:724,42'
              BranchSideFuncs:
                - smtp_server_command_send_replies
        - Branch String:   'smtp-server-connection.c:720,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:720,3'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-connection.c:720,3'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-connection.c:720,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:720,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:720,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:724,9'
          Dst:             smtp_server_command_send_replies
    - functionName:    smtp_server_connection_input_resume
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         31
      ICount:          156
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - connection_input_resume
        - i_stream_have_bytes_left
        - io_set_pending
        - smtp_server_connection_check_pipeline
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:96,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:98,7'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:120,6'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:98,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:98,29'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:100,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:98,48'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:99,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:100,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:98,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:100,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:101,46'
              BranchSideFuncs:
                - smtp_server_connection_check_pipeline
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:101,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:102,4'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:105,9'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:106,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:107,8'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:113,7'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:107,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:107,29'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:108,16'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:107,8'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:108,16'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:111,10'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:113,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:114,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:117,28'
              BranchSideFuncs:
                - connection_input_resume
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:120,28'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:120,28'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:121,28'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - io_set_pending
        - Branch String:   'smtp-server-connection.c:120,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:120,6'
              BranchSideFuncs:
                - io_set_pending
            - BranchSide:      'smtp-server-connection.c:122,18'
              BranchSideFuncs:
                - io_set_pending
      Callsites:
        - Src:             'smtp-server-connection.c:101,8'
          Dst:             smtp_server_connection_check_pipeline
        - Src:             'smtp-server-connection.c:117,3'
          Dst:             connection_input_resume
        - Src:             'smtp-server-connection.c:121,3'
          Dst:             i_stream_have_bytes_left
        - Src:             'smtp-server-connection.c:122,3'
          Dst:             io_set_pending
    - functionName:    stat
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_sni_callback
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - error_r
        - context
      BBCount:         53
      ICount:          320
      EdgeCount:       66
      CyclomaticComplexity: 15
      functionsReached:
        - event_add_str
        - i_strdup
        - p_free_internal
        - pool_unref
        - smtp_protocol_name
        - ssl_iostream_change_context
        - ssl_iostream_context_set_application_protocols
        - ssl_iostream_context_unref
        - ssl_iostream_server_context_cache_get
        - ssl_server_settings_get
        - ssl_server_settings_to_iostream_set
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:363,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:365,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:366,6'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:366,31'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:366,35'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:368,6'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:366,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:367,24'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:368,6'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:368,53'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:369,6'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:376,38'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:368,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:371,3'
              BranchSideFuncs:
                - pool_unref.719
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:376,38'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:371,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:371,3'
              BranchSideFuncs:
                - pool_unref.719
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:372,3'
              BranchSideFuncs:
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:372,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:372,3'
              BranchSideFuncs:
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:373,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:380,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:382,3'
              BranchSideFuncs:
                - pool_unref.719
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:386,2'
              BranchSideFuncs:
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:382,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:382,3'
              BranchSideFuncs:
                - pool_unref.719
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:383,3'
              BranchSideFuncs:
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:383,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:383,3'
              BranchSideFuncs:
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:384,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:386,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:386,2'
              BranchSideFuncs:
                - pool_unref.719
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
            - BranchSide:      'smtp-server-connection.c:387,2'
              BranchSideFuncs:
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - pool_unref.719
        - Branch String:   'smtp-server-connection.c:387,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:387,2'
              BranchSideFuncs:
                - pool_unref.719
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
            - BranchSide:      'smtp-server-connection.c:388,6'
              BranchSideFuncs:
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
        - Branch String:   'smtp-server-connection.c:388,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:389,57'
              BranchSideFuncs:
                - smtp_protocol_name
                - ssl_iostream_context_set_application_protocols
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
            - BranchSide:      'smtp-server-connection.c:396,30'
              BranchSideFuncs:
                - ssl_iostream_change_context
                - ssl_iostream_context_unref
      Callsites:
        - Src:             'smtp-server-connection.c:360,2'
          Dst:             event_add_str
        - Src:             'smtp-server-connection.c:361,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:362,21'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:363,6'
          Dst:             ssl_server_settings_get
        - Src:             'smtp-server-connection.c:371,3'
          Dst:             pool_unref
        - Src:             'smtp-server-connection.c:372,3'
          Dst:             pool_unref
        - Src:             'smtp-server-connection.c:376,2'
          Dst:             ssl_server_settings_to_iostream_set
        - Src:             'smtp-server-connection.c:380,13'
          Dst:             ssl_iostream_server_context_cache_get
        - Src:             'smtp-server-connection.c:382,3'
          Dst:             pool_unref
        - Src:             'smtp-server-connection.c:383,3'
          Dst:             pool_unref
        - Src:             'smtp-server-connection.c:386,2'
          Dst:             pool_unref
        - Src:             'smtp-server-connection.c:387,2'
          Dst:             pool_unref
        - Src:             'smtp-server-connection.c:389,38'
          Dst:             smtp_protocol_name
        - Src:             'smtp-server-connection.c:394,3'
          Dst:             ssl_iostream_context_set_application_protocols
        - Src:             'smtp-server-connection.c:396,2'
          Dst:             ssl_iostream_change_context
        - Src:             'smtp-server-connection.c:397,2'
          Dst:             ssl_iostream_context_unref
    - functionName:    smtp_server_connection_streams_changed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_set_flush_callback
        - o_stream_set_flush_pending
        - smtp_command_parser_set_stream
        - smtp_server_connection_output
        - smtp_server_connection_update_rawlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:171,2'
          Dst:             smtp_server_connection_update_rawlog
        - Src:             'smtp-server-connection.c:172,2'
          Dst:             smtp_command_parser_set_stream
        - Src:             'smtp-server-connection.c:174,2'
          Dst:             o_stream_set_flush_callback
        - Src:             'smtp-server-connection.c:174,2'
          Dst:             smtp_server_connection_output
        - Src:             'smtp-server-connection.c:176,2'
          Dst:             o_stream_set_flush_pending
    - functionName:    smtp_protocol_name
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-common.h'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - proto
      BBCount:         8
      ICount:          36
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - i_unreached
      functionUses:    2
      BranchProfiles:
        - Branch String:   './smtp-common.h:24,2'
          Branch Sides:
            - BranchSide:      './smtp-common.h:26,3'
              BranchSideFuncs: []
            - BranchSide:      './smtp-common.h:28,3'
              BranchSideFuncs: []
            - BranchSide:      './smtp-common.h:30,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             './smtp-common.h:32,2'
          Dst:             i_unreached
    - functionName:    smtp_server_connection_destroy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_disconnect
        - smtp_server_connection_unref
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:316,2'
          Dst:             smtp_server_connection_disconnect
        - Src:             'smtp-server-connection.c:317,2'
          Dst:             smtp_server_connection_unref
    - functionName:    smtp_server_connection_get_server_name
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1777
      functionLinenumberEnd: 1781
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ssl_iostream_get_server_name
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1778,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1779,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1780,38'
              BranchSideFuncs:
                - ssl_iostream_get_server_name
      Callsites:
        - Src:             'smtp-server-connection.c:1780,9'
          Dst:             ssl_iostream_get_server_name
    - functionName:    smtp_server_connection_reason_begin
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1767
      functionLinenumberEnd: 1773
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - name
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_reason_begin
        - event_reason_code
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1768,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1769,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1771,21'
              BranchSideFuncs:
                - event_reason_code
                - event_reason_begin
      Callsites:
        - Src:             'smtp-server-connection.c:1771,3'
          Dst:             event_reason_code
        - Src:             'smtp-server-connection.c:1772,9'
          Dst:             event_reason_begin
    - functionName:    smtp_server_connection_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1758
      functionLinenumberEnd: 1762
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connection_switch_ioloop
        - io_loop_move_timeout
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1759,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1759,6'
              BranchSideFuncs:
                - io_loop_move_timeout
                - connection_switch_ioloop
            - BranchSide:      'smtp-server-connection.c:1760,41'
              BranchSideFuncs:
                - io_loop_move_timeout
                - connection_switch_ioloop
      Callsites:
        - Src:             'smtp-server-connection.c:1760,19'
          Dst:             io_loop_move_timeout
        - Src:             'smtp-server-connection.c:1761,2'
          Dst:             connection_switch_ioloop
    - functionName:    smtp_server_connection_register_rcpt_param
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1741
      functionLinenumberEnd: 1755
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - param
      BBCount:         10
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_idx_set_i
        - array_is_created_i
        - i_panic
        - p_strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1744,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1745,3'
              BranchSideFuncs:
                - array_count_i.782
                - array_idx_set_i
                - array_append_space_i
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1748,24'
              BranchSideFuncs:
                - array_count_i.782
                - array_idx_set_i
                - array_append_space_i
                - i_panic
        - Branch String:   'smtp-server-connection.c:1750,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1750,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1751,3'
              BranchSideFuncs:
                - array_idx_set_i
                - array_append_space_i
      Callsites:
        - Src:             'smtp-server-connection.c:1742,10'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:1744,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-connection.c:1745,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:1746,3'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:1748,24'
          Dst:             array_count_i
        - Src:             'smtp-server-connection.c:1750,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1751,3'
          Dst:             array_idx_set_i
        - Src:             'smtp-server-connection.c:1754,2'
          Dst:             array_append_space_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.689
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.689
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    smtp_server_connection_register_mail_param
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1723
      functionLinenumberEnd: 1737
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - param
      BBCount:         10
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_idx_set_i
        - array_is_created_i
        - i_panic
        - p_strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1726,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1727,3'
              BranchSideFuncs:
                - array_count_i.782
                - array_idx_set_i
                - array_append_space_i
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1730,24'
              BranchSideFuncs:
                - array_count_i.782
                - array_idx_set_i
                - array_append_space_i
                - i_panic
        - Branch String:   'smtp-server-connection.c:1732,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1732,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1733,3'
              BranchSideFuncs:
                - array_idx_set_i
                - array_append_space_i
      Callsites:
        - Src:             'smtp-server-connection.c:1724,10'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:1726,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-connection.c:1727,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:1728,3'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:1730,24'
          Dst:             array_count_i
        - Src:             'smtp-server-connection.c:1732,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1733,3'
          Dst:             array_idx_set_i
        - Src:             'smtp-server-connection.c:1736,2'
          Dst:             array_append_space_i
    - functionName:    smtp_server_connection_set_proxy_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1666
      functionLinenumberEnd: 1719
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - proxy_data
      BBCount:         60
      ICount:          401
      EdgeCount:       75
      CyclomaticComplexity: 17
      functionsReached:
        - connection_update_properties
        - e_debug
        - event_send_abort
        - event_want_level
        - i_strdup
        - p_free_internal
        - smtp_server_connection_get_proxy_data
        - smtp_server_connection_update_event
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1667,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1668,3'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1669,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1669,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1670,28'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1671,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1671,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1672,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1681,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1676,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1677,4'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1680,2'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1681,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1682,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1685,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
        - Branch String:   'smtp-server-connection.c:1685,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1686,23'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1687,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
        - Branch String:   'smtp-server-connection.c:1687,34'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1688,13'
              BranchSideFuncs:
                - strcmp
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1694,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1687,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1689,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1694,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1689,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1689,3'
              BranchSideFuncs:
                - e_debug
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1689,3'
              BranchSideFuncs:
                - event_send_abort
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1694,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1695,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1698,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1698,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1699,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1702,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1702,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1703,28'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1704,6'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1704,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1705,30'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1707,32'
              BranchSideFuncs:
                - connection_update_properties
                - smtp_server_connection_update_event
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1710,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1710,30'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1711,6'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
        - Branch String:   'smtp-server-connection.c:1710,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1710,6'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
            - BranchSide:      'smtp-server-connection.c:1714,41'
              BranchSideFuncs:
                - smtp_server_connection_get_proxy_data
      Callsites:
        - Src:             'smtp-server-connection.c:1672,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1673,23'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1677,4'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1678,23'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1682,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1683,20'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1688,6'
          Dst:             strcmp
        - Src:             'smtp-server-connection.c:1689,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1689,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1689,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1691,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1692,22'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1695,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1696,28'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1699,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1700,22'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1707,2'
          Dst:             connection_update_properties
        - Src:             'smtp-server-connection.c:1708,2'
          Dst:             smtp_server_connection_update_event
        - Src:             'smtp-server-connection.c:1714,3'
          Dst:             smtp_server_connection_get_proxy_data
    - 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:    143
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_update_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_str
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:846,2'
          Dst:             event_add_str
        - Src:             'smtp-server-connection.c:847,2'
          Dst:             event_add_str
    - functionName:    smtp_server_connection_get_proxy_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1637
      functionLinenumberEnd: 1661
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - proxy_data
      BBCount:         16
      ICount:          153
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1641,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1642,22'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1643,11'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1650,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1651,23'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1652,11'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1652,11'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1653,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1654,11'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1654,11'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1655,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1657,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_get_transaction_id
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1629
      functionLinenumberEnd: 1633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1630,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1631,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1632,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_get_transaction
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1623
      functionLinenumberEnd: 1624
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    smtp_server_connection_get_protocol_name
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1618
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         16
      ICount:          93
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - i_unreached
        - str_append
        - str_append_c
        - str_c
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1601,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1603,7'
              BranchSideFuncs:
                - str_append.765
                - str_c
                - str_append_c.785
                - str_append_c.785
                - str_append.765
            - BranchSide:      'smtp-server-connection.c:1609,14'
              BranchSideFuncs:
                - str_append.765
                - str_c
                - str_append_c.785
                - str_append_c.785
            - BranchSide:      'smtp-server-connection.c:1612,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-connection.c:1603,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1604,15'
              BranchSideFuncs:
                - str_append.765
                - str_c
                - str_append_c.785
                - str_append_c.785
            - BranchSide:      'smtp-server-connection.c:1606,15'
              BranchSideFuncs:
                - str_append.765
                - str_c
                - str_append_c.785
                - str_append_c.785
        - Branch String:   'smtp-server-connection.c:1614,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1615,3'
              BranchSideFuncs:
                - str_append_c.785
                - str_c
                - str_append_c.785
            - BranchSide:      'smtp-server-connection.c:1616,6'
              BranchSideFuncs:
                - str_c
                - str_append_c.785
        - Branch String:   'smtp-server-connection.c:1616,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1616,6'
              BranchSideFuncs:
                - str_append_c.785
                - str_c
            - BranchSide:      'smtp-server-connection.c:1617,3'
              BranchSideFuncs:
                - str_append_c.785
                - str_c
      Callsites:
        - Src:             'smtp-server-connection.c:1599,20'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1604,4'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1606,4'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1609,3'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1612,3'
          Dst:             i_unreached
        - Src:             'smtp-server-connection.c:1615,3'
          Dst:             str_append_c
        - Src:             'smtp-server-connection.c:1617,3'
          Dst:             str_append_c
        - Src:             'smtp-server-connection.c:1618,9'
          Dst:             str_c
    - functionName:    smtp_server_connection_get_protocol
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1592
      functionLinenumberEnd: 1593
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_is_started
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1586
      functionLinenumberEnd: 1587
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_is_trusted
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1579
      functionLinenumberEnd: 1583
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1580,30'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1580,33'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1581,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1580,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1581,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1582,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_is_ssl_secured
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1574
      functionLinenumberEnd: 1575
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_get_context
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1569
      functionLinenumberEnd: 1570
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_insert_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - data
        - count
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:233,2'
          Dst:             buffer_insert
    - functionName:    smtp_server_connection_add_extra_capability
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1528
      functionLinenumberEnd: 1566
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - cap
      BBCount:         32
      ICount:          217
      EdgeCount:       36
      CyclomaticComplexity: 6
      functionsReached:
        - array_count_i
        - array_create_i
        - array_insert_i
        - array_is_created_i
        - i_panic
        - p_strarray_dup
        - p_strdup
        - smtp_capability_find_by_name
        - smtp_ehlo_keyword_is_valid
        - smtp_ehlo_params_are_valid
        - strcasecmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1535,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1535,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1536,2'
              BranchSideFuncs:
                - smtp_ehlo_params_are_valid
                - smtp_capability_find_by_name
                - array_is_created_i.779
                - array_create_i.780
                - array_count_i.782
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-connection.c:1536,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1536,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1539,2'
              BranchSideFuncs:
                - smtp_capability_find_by_name
                - array_is_created_i.779
                - array_create_i.780
                - array_count_i.782
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-connection.c:1539,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1539,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1542,7'
              BranchSideFuncs:
                - array_is_created_i.779
                - array_create_i.780
                - array_count_i.782
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1542,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1543,3'
              BranchSideFuncs:
                - array_count_i.782
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1546,15'
              BranchSideFuncs:
                - array_count_i.782
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1547,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1548,24'
              BranchSideFuncs:
                - strcasecmp
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1560,2'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:1551,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1551,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1553,7'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1553,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1554,17'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:1558,2'
              BranchSideFuncs:
                - p_strdup
                - array_insert_i
                - p_strarray_dup
                - strcasecmp
                - i_panic
        - Branch String:   'smtp-server-connection.c:1562,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1562,6'
              BranchSideFuncs:
                - p_strarray_dup
                - array_insert_i
            - BranchSide:      'smtp-server-connection.c:1563,35'
              BranchSideFuncs:
                - p_strarray_dup
                - array_insert_i
      Callsites:
        - Src:             'smtp-server-connection.c:1535,2'
          Dst:             smtp_ehlo_keyword_is_valid
        - Src:             'smtp-server-connection.c:1535,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1536,2'
          Dst:             smtp_ehlo_params_are_valid
        - Src:             'smtp-server-connection.c:1536,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1539,2'
          Dst:             smtp_capability_find_by_name
        - Src:             'smtp-server-connection.c:1539,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1542,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-connection.c:1543,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:1546,15'
          Dst:             array_count_i
        - Src:             'smtp-server-connection.c:1548,13'
          Dst:             strcasecmp
        - Src:             'smtp-server-connection.c:1551,3'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1561,17'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:1563,20'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:1565,2'
          Dst:             array_insert_i
    - functionName:    smtp_server_connection_set_greeting
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1521
      functionLinenumberEnd: 1523
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - greeting
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:1522,29'
          Dst:             p_strdup
    - functionName:    smtp_server_connection_set_capabilities
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1515
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - conn
        - capabilities
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_clear
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1505
      functionLinenumberEnd: 1511
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - p_free_internal
        - smtp_server_connection_reset_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1506,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1506,2'
              BranchSideFuncs:
                - e_debug
                - p_free_internal
                - smtp_server_connection_reset_state
            - BranchSide:      'smtp-server-connection.c:1506,2'
              BranchSideFuncs:
                - event_send_abort
                - p_free_internal
                - smtp_server_connection_reset_state
      Callsites:
        - Src:             'smtp-server-connection.c:1506,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1506,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1506,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1508,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1510,2'
          Dst:             smtp_server_connection_reset_state
    - functionName:    smtp_server_connection_get_security_string
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1475
      functionLinenumberEnd: 1479
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ssl_iostream_get_security_string
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1476,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1477,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1478,42'
              BranchSideFuncs:
                - ssl_iostream_get_security_string
      Callsites:
        - Src:             'smtp-server-connection.c:1478,9'
          Dst:             ssl_iostream_get_security_string
    - functionName:    smtp_server_connection_get_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1446
      functionLinenumberEnd: 1449
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - args_r
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1447,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1447,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1448,13'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_connection_get_helo_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1439
      functionLinenumberEnd: 1440
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_connection_halt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1371
      functionLinenumberEnd: 1380
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         12
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_server_connection_input_lock
        - smtp_server_connection_timeout_stop
        - ssl_iostream_is_handshaked
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1374,22'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1375,7'
              BranchSideFuncs:
                - ssl_iostream_is_handshaked
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:1379,36'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
        - Branch String:   'smtp-server-connection.c:1375,34'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1376,35'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1377,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-connection.c:1374,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1377,3'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
            - BranchSide:      'smtp-server-connection.c:1379,36'
              BranchSideFuncs:
                - smtp_server_connection_input_lock
      Callsites:
        - Src:             'smtp-server-connection.c:1373,2'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-connection.c:1376,8'
          Dst:             ssl_iostream_is_handshaked
        - Src:             'smtp-server-connection.c:1379,2'
          Dst:             smtp_server_connection_input_lock
    - functionName:    smtp_server_connection_abort
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1348
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _conn
        - status
        - enh_code
        - reason
      BBCount:         12
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_connection_reply_lines
        - smtp_server_connection_terminate
        - t_strsplit_spaces
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1352,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1353,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1354,3'
              BranchSideFuncs:
                - smtp_server_connection_terminate
                - t_strsplit_spaces
                - smtp_server_connection_reply_lines
                - smtp_server_connection_terminate
                - i_panic
        - Branch String:   'smtp-server-connection.c:1356,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1356,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1357,2'
              BranchSideFuncs:
                - smtp_server_connection_terminate
                - t_strsplit_spaces
                - smtp_server_connection_reply_lines
                - smtp_server_connection_terminate
        - Branch String:   'smtp-server-connection.c:1359,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1360,36'
              BranchSideFuncs:
                - t_strsplit_spaces
                - smtp_server_connection_reply_lines
                - smtp_server_connection_terminate
            - BranchSide:      'smtp-server-connection.c:1366,43'
              BranchSideFuncs:
                - smtp_server_connection_terminate
      Callsites:
        - Src:             'smtp-server-connection.c:1356,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1360,18'
          Dst:             t_strsplit_spaces
        - Src:             'smtp-server-connection.c:1361,3'
          Dst:             smtp_server_connection_reply_lines
        - Src:             'smtp-server-connection.c:1363,3'
          Dst:             smtp_server_connection_terminate
        - Src:             'smtp-server-connection.c:1366,3'
          Dst:             smtp_server_connection_terminate
    - functionName:    smtp_server_connection_resume
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1383
      functionLinenumberEnd: 1387
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_input_unlock
        - smtp_server_connection_timeout_update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:1384,2'
          Dst:             smtp_server_connection_input_unlock
        - Src:             'smtp-server-connection.c:1385,2'
          Dst:             smtp_server_connection_timeout_update
    - functionName:    smtp_server_connection_input_unlock
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_input_resume
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:135,2'
          Dst:             smtp_server_connection_input_resume
    - functionName:    smtp_server_connection_start
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1340
      functionLinenumberEnd: 1343
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_resume
        - smtp_server_connection_start_pending
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:1341,2'
          Dst:             smtp_server_connection_start_pending
        - Src:             'smtp-server-connection.c:1342,2'
          Dst:             smtp_server_connection_resume
    - functionName:    smtp_server_connection_start_pending
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1327
      functionLinenumberEnd: 1337
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         18
      ICount:          92
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_connection_input_unlock
        - smtp_server_connection_ready
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1328,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1328,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1329,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_connection_ready
                - smtp_server_connection_input_unlock
                - e_debug
        - Branch String:   'smtp-server-connection.c:1331,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1331,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_ready
                - smtp_server_connection_input_unlock
            - BranchSide:      'smtp-server-connection.c:1331,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_ready
                - smtp_server_connection_input_unlock
        - Branch String:   'smtp-server-connection.c:1333,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1334,32'
              BranchSideFuncs:
                - smtp_server_connection_input_unlock
            - BranchSide:      'smtp-server-connection.c:1335,11'
              BranchSideFuncs:
                - smtp_server_connection_input_unlock
      Callsites:
        - Src:             'smtp-server-connection.c:1328,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1331,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1331,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1331,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1334,3'
          Dst:             smtp_server_connection_ready
        - Src:             'smtp-server-connection.c:1336,3'
          Dst:             smtp_server_connection_input_unlock
    - functionName:    smtp_server_connection_login
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1305
      functionLinenumberEnd: 1324
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - conn
        - username
        - helo
        - pdata
        - pdata_len
        - ssl_secured
      BBCount:         21
      ICount:          165
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - i_strdup
        - i_stream_add_data
        - p_free_internal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1306,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1306,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1308,2'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - i_stream_add_data
                - i_panic
                - p_free_internal
                - i_strdup
        - Branch String:   'smtp-server-connection.c:1311,19'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1311,23'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
                - p_free_internal
                - i_strdup
            - BranchSide:      'smtp-server-connection.c:1317,2'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
        - Branch String:   'smtp-server-connection.c:1311,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1312,3'
              BranchSideFuncs:
                - p_free_internal
                - i_strdup
                - i_stream_add_data
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1317,2'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
        - Branch String:   'smtp-server-connection.c:1320,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1320,6'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1321,26'
              BranchSideFuncs:
                - i_stream_add_data
                - i_panic
        - Branch String:   'smtp-server-connection.c:1321,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1322,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:1323,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-connection.c:1306,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1309,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1310,19'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1312,3'
          Dst:             p_free_internal
        - Src:             'smtp-server-connection.c:1313,23'
          Dst:             i_strdup
        - Src:             'smtp-server-connection.c:1321,8'
          Dst:             i_stream_add_data
        - Src:             'smtp-server-connection.c:1322,4'
          Dst:             i_panic
    - functionName:    smtp_server_connection_reply_immediate
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1276
      functionLinenumberEnd: 1299
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - status
        - fmt
      BBCount:         17
      ICount:          118
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - o_stream_cork
        - o_stream_is_corked
        - o_stream_nsend
        - o_stream_uncork
        - str_append
        - str_c
        - str_data
        - str_len
        - str_printfa
        - str_vprintfa
        - t_pop
        - t_push
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1287,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1287,3'
              BranchSideFuncs:
                - str_c
                - e_debug
                - str_append.765
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - o_stream_is_corked
                - o_stream_uncork
                - o_stream_cork
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1287,3'
              BranchSideFuncs:
                - event_send_abort
                - str_append.765
                - str_data.734
                - str_len.690
                - o_stream_nsend
                - t_pop
                - o_stream_is_corked
                - o_stream_uncork
                - o_stream_cork
                - i_panic
        - Branch String:   'smtp-server-connection.c:1291,4'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1291,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1291,4'
              BranchSideFuncs:
                - o_stream_is_corked
                - o_stream_uncork
                - o_stream_cork
        - Branch String:   'smtp-server-connection.c:1295,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1295,6'
              BranchSideFuncs:
                - o_stream_uncork
                - o_stream_cork
            - BranchSide:      'smtp-server-connection.c:1296,19'
              BranchSideFuncs:
                - o_stream_uncork
                - o_stream_cork
      Callsites:
        - Src:             'smtp-server-connection.c:1280,2'
          Dst:             t_push
        - Src:             'smtp-server-connection.c:1283,9'
          Dst:             t_str_new
        - Src:             'smtp-server-connection.c:1284,3'
          Dst:             str_printfa
        - Src:             'smtp-server-connection.c:1285,3'
          Dst:             str_vprintfa
        - Src:             'smtp-server-connection.c:1287,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1287,3'
          Dst:             str_c
        - Src:             'smtp-server-connection.c:1287,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1287,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:1289,3'
          Dst:             str_append
        - Src:             'smtp-server-connection.c:1290,37'
          Dst:             str_data
        - Src:             'smtp-server-connection.c:1290,52'
          Dst:             str_len
        - Src:             'smtp-server-connection.c:1290,3'
          Dst:             o_stream_nsend
        - Src:             'smtp-server-connection.c:1291,4'
          Dst:             t_pop
        - Src:             'smtp-server-connection.c:1291,4'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1295,6'
          Dst:             o_stream_is_corked
        - Src:             'smtp-server-connection.c:1296,3'
          Dst:             o_stream_uncork
        - Src:             'smtp-server-connection.c:1297,3'
          Dst:             o_stream_cork
    - functionName:    smtp_server_connection_create_from_streams
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1075
      functionLinenumberEnd: 1102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - input
        - output
        - remote_ip
        - remote_port
        - set
        - callbacks
        - context
      BBCount:         19
      ICount:          172
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - connection_init_from_streams
        - event_unref
        - i_panic
        - i_stream_get_fd
        - o_stream_get_fd
        - smtp_server_connection_alloc
        - smtp_server_connection_created
        - smtp_server_connection_event_create
        - smtp_server_connection_update_event
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1082,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1082,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1083,2'
              BranchSideFuncs:
                - smtp_server_connection_alloc
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
                - i_panic
        - Branch String:   'smtp-server-connection.c:1083,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1083,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:1085,38'
              BranchSideFuncs:
                - smtp_server_connection_alloc
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
        - Branch String:   'smtp-server-connection.c:1087,24'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1087,27'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
            - BranchSide:      'smtp-server-connection.c:1089,6'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
        - Branch String:   'smtp-server-connection.c:1087,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1088,3'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
            - BranchSide:      'smtp-server-connection.c:1089,6'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
        - Branch String:   'smtp-server-connection.c:1089,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1089,6'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
            - BranchSide:      'smtp-server-connection.c:1090,28'
              BranchSideFuncs:
                - smtp_server_connection_event_create
                - connection_init_from_streams
                - smtp_server_connection_update_event
                - event_unref
                - smtp_server_connection_created
      Callsites:
        - Src:             'smtp-server-connection.c:1080,10'
          Dst:             i_stream_get_fd
        - Src:             'smtp-server-connection.c:1081,11'
          Dst:             o_stream_get_fd
        - Src:             'smtp-server-connection.c:1082,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1083,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:1085,9'
          Dst:             smtp_server_connection_alloc
        - Src:             'smtp-server-connection.c:1091,15'
          Dst:             smtp_server_connection_event_create
        - Src:             'smtp-server-connection.c:1093,2'
          Dst:             connection_init_from_streams
        - Src:             'smtp-server-connection.c:1097,2'
          Dst:             smtp_server_connection_update_event
        - Src:             'smtp-server-connection.c:1098,2'
          Dst:             event_unref
        - Src:             'smtp-server-connection.c:1100,2'
          Dst:             smtp_server_connection_created
    - functionName:    smtp_server_connection_alloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 873
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - set
        - fd_in
        - fd_out
        - callbacks
        - context
      BBCount:         115
      ICount:          920
      EdgeCount:       154
      CyclomaticComplexity: 41
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_create_i
        - e_error
        - malloc_multiply_check
        - net_set_nonblock
        - net_set_recv_buffer_size
        - net_set_send_buffer_size
        - net_set_tcp_nodelay
        - p_malloc
        - p_strarray_dup
        - p_strdup
        - pool_alloconly_create
        - pool_ref
        - smtp_command_limits_merge
        - smtp_server_connection_init_session
        - str_array_length
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:887,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:888,24'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - pool_ref
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:979,6'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:889,31'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:889,35'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - pool_ref
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:892,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - pool_ref
        - Branch String:   'smtp-server-connection.c:889,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:890,36'
              BranchSideFuncs:
                - p_strdup
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - pool_ref
            - BranchSide:      'smtp-server-connection.c:892,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
                - pool_ref
        - Branch String:   'smtp-server-connection.c:892,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:893,20'
              BranchSideFuncs:
                - pool_ref
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:897,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-server-connection.c:897,29'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:897,33'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:899,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
        - Branch String:   'smtp-server-connection.c:897,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:898,34'
              BranchSideFuncs:
                - p_strdup
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:899,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
        - Branch String:   'smtp-server-connection.c:899,35'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:900,5'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
            - BranchSide:      'smtp-server-connection.c:904,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:899,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:902,14'
              BranchSideFuncs:
                - p_strdup
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:904,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:904,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:905,29'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:906,28'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:908,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:910,5'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:912,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:912,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:914,5'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:916,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:916,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:917,33'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:919,7'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:919,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:920,31'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:921,30'
              BranchSideFuncs:
                - smtp_command_limits_merge
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:925,34'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:926,7'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:927,4'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:925,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:927,4'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:928,14'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:928,14'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:930,3'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:930,14'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:930,14'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:933,4'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:938,5'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:942,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:944,20'
              BranchSideFuncs:
                - p_strarray_dup
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:946,7'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:946,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:948,20'
              BranchSideFuncs:
                - p_strarray_dup
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
            - BranchSide:      'smtp-server-connection.c:950,7'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strarray_dup
        - Branch String:   'smtp-server-connection.c:950,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:952,20'
              BranchSideFuncs:
                - p_strarray_dup
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:955,7'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:955,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:957,5'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:959,7'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:959,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:961,5'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:965,4'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:965,27'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:964,3'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:965,30'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:967,28'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:966,3'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:967,31'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:969,37'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:968,3'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:970,5'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:972,35'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:971,3'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:973,5'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:975,26'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:974,3'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:975,29'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:976,37'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:976,3'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:976,40'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:979,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:979,21'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:990,6'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:979,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:982,3'
              BranchSideFuncs:
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:990,6'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:984,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:985,31'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.781
                - array_append_space_i
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:988,3'
              BranchSideFuncs:
                - array_append_space_i
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
        - Branch String:   'smtp-server-connection.c:990,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:990,21'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:1002,19'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
        - Branch String:   'smtp-server-connection.c:990,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:993,3'
              BranchSideFuncs:
                - str_array_length
                - array_create_i.780
                - array_append_space_i
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
                - p_strdup
                - array_append_i.781
            - BranchSide:      'smtp-server-connection.c:1002,19'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
        - Branch String:   'smtp-server-connection.c:995,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:996,31'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.781
                - array_append_space_i
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
            - BranchSide:      'smtp-server-connection.c:999,3'
              BranchSideFuncs:
                - array_append_space_i
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
                - net_set_nonblock
        - Branch String:   'smtp-server-connection.c:1003,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1004,20'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
            - BranchSide:      'smtp-server-connection.c:1005,28'
              BranchSideFuncs:
                - net_set_tcp_nodelay
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - net_set_send_buffer_size
                - e_error
        - Branch String:   'smtp-server-connection.c:1008,39'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1009,31'
              BranchSideFuncs:
                - net_set_send_buffer_size
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
                - e_error
            - BranchSide:      'smtp-server-connection.c:1015,6'
              BranchSideFuncs:
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
        - Branch String:   'smtp-server-connection.c:1008,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1011,3'
              BranchSideFuncs:
                - e_error
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
            - BranchSide:      'smtp-server-connection.c:1015,6'
              BranchSideFuncs:
                - smtp_server_connection_init_session
                - net_set_recv_buffer_size
                - e_error
        - Branch String:   'smtp-server-connection.c:1015,39'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1015,39'
              BranchSideFuncs:
                - net_set_recv_buffer_size
                - smtp_server_connection_init_session
                - e_error
            - BranchSide:      'smtp-server-connection.c:1016,31'
              BranchSideFuncs:
                - net_set_recv_buffer_size
                - smtp_server_connection_init_session
                - e_error
        - Branch String:   'smtp-server-connection.c:1015,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1015,6'
              BranchSideFuncs:
                - e_error
                - smtp_server_connection_init_session
            - BranchSide:      'smtp-server-connection.c:1018,3'
              BranchSideFuncs:
                - e_error
                - smtp_server_connection_init_session
      Callsites:
        - Src:             'smtp-server-connection.c:877,9'
          Dst:             pool_alloconly_create
        - Src:             'smtp-server-connection.c:878,9'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-connection.c:878,9'
          Dst:             p_malloc
        - Src:             'smtp-server-connection.c:890,27'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:894,4'
          Dst:             pool_ref
        - Src:             'smtp-server-connection.c:898,25'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:902,5'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:921,3'
          Dst:             smtp_command_limits_merge
        - Src:             'smtp-server-connection.c:944,5'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:948,5'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:952,5'
          Dst:             p_strarray_dup
        - Src:             'smtp-server-connection.c:982,3'
          Dst:             str_array_length
        - Src:             'smtp-server-connection.c:982,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:985,22'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:986,4'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:988,3'
          Dst:             array_append_space_i
        - Src:             'smtp-server-connection.c:993,3'
          Dst:             str_array_length
        - Src:             'smtp-server-connection.c:993,3'
          Dst:             array_create_i
        - Src:             'smtp-server-connection.c:996,22'
          Dst:             p_strdup
        - Src:             'smtp-server-connection.c:997,4'
          Dst:             array_append_i
        - Src:             'smtp-server-connection.c:999,3'
          Dst:             array_append_space_i
        - Src:             'smtp-server-connection.c:1002,2'
          Dst:             net_set_nonblock
        - Src:             'smtp-server-connection.c:1004,3'
          Dst:             net_set_nonblock
        - Src:             'smtp-server-connection.c:1005,8'
          Dst:             net_set_tcp_nodelay
        - Src:             'smtp-server-connection.c:1009,6'
          Dst:             net_set_send_buffer_size
        - Src:             'smtp-server-connection.c:1011,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:1016,6'
          Dst:             net_set_recv_buffer_size
        - Src:             'smtp-server-connection.c:1018,3'
          Dst:             e_error
        - Src:             'smtp-server-connection.c:1023,2'
          Dst:             smtp_server_connection_init_session
    - functionName:    smtp_server_connection_event_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - set
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - event_create
        - event_set_append_log_prefix
        - event_set_forced_debug
        - smtp_protocol_name
        - smtp_server_event_init
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:831,18'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:831,21'
              BranchSideFuncs:
                - event_create
                - smtp_protocol_name
                - t_strdup_printf
                - event_set_append_log_prefix
                - event_set_forced_debug
                - event_create
                - smtp_server_event_init
            - BranchSide:      'smtp-server-connection.c:835,16'
              BranchSideFuncs:
                - event_create
                - smtp_protocol_name
                - t_strdup_printf
                - event_set_append_log_prefix
                - event_set_forced_debug
        - Branch String:   'smtp-server-connection.c:831,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:832,16'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - smtp_protocol_name
                - t_strdup_printf
                - event_set_append_log_prefix
                - event_set_forced_debug
            - BranchSide:      'smtp-server-connection.c:835,16'
              BranchSideFuncs:
                - event_create
                - smtp_protocol_name
                - t_strdup_printf
                - event_set_append_log_prefix
                - event_set_forced_debug
        - Branch String:   'smtp-server-connection.c:838,50'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:838,53'
              BranchSideFuncs:
                - event_set_forced_debug
            - BranchSide:      'smtp-server-connection.c:838,50'
              BranchSideFuncs:
                - event_set_forced_debug
      Callsites:
        - Src:             'smtp-server-connection.c:832,16'
          Dst:             event_create
        - Src:             'smtp-server-connection.c:833,3'
          Dst:             smtp_server_event_init
        - Src:             'smtp-server-connection.c:835,16'
          Dst:             event_create
        - Src:             'smtp-server-connection.c:837,18'
          Dst:             smtp_protocol_name
        - Src:             'smtp-server-connection.c:836,42'
          Dst:             t_strdup_printf
        - Src:             'smtp-server-connection.c:836,2'
          Dst:             event_set_append_log_prefix
        - Src:             'smtp-server-connection.c:838,2'
          Dst:             event_set_forced_debug
    - functionName:    smtp_server_connection_created
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1029
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         8
      ICount:          56
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - smtp_server_connection_halt
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1036,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1036,2'
              BranchSideFuncs:
                - e_debug
            - BranchSide:      'smtp-server-connection.c:1036,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'smtp-server-connection.c:1034,2'
          Dst:             smtp_server_connection_halt
        - Src:             'smtp-server-connection.c:1036,2'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:1036,2'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:1036,2'
          Dst:             event_send_abort
    - functionName:    smtp_server_connection_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1045
      functionLinenumberEnd: 1065
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - short
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - fd_in
        - fd_out
        - remote_ip
        - remote_port
        - ssl_start
        - set
        - callbacks
        - context
      BBCount:         6
      ICount:          112
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connection_init_server_ip
        - event_unref
        - smtp_server_connection_alloc
        - smtp_server_connection_created
        - smtp_server_connection_event_create
        - smtp_server_connection_update_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:1060,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:1060,6'
              BranchSideFuncs:
                - smtp_server_connection_created
            - BranchSide:      'smtp-server-connection.c:1061,3'
              BranchSideFuncs:
                - smtp_server_connection_created
      Callsites:
        - Src:             'smtp-server-connection.c:1049,9'
          Dst:             smtp_server_connection_alloc
        - Src:             'smtp-server-connection.c:1051,15'
          Dst:             smtp_server_connection_event_create
        - Src:             'smtp-server-connection.c:1053,2'
          Dst:             connection_init_server_ip
        - Src:             'smtp-server-connection.c:1056,2'
          Dst:             smtp_server_connection_update_event
        - Src:             'smtp-server-connection.c:1057,2'
          Dst:             event_unref
        - Src:             'smtp-server-connection.c:1063,2'
          Dst:             smtp_server_connection_created
    - functionName:    smtp_server_connection_list_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 820
      functionLinenumberEnd: 821
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_list_init
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:821,9'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:821,9'
              BranchSideFuncs:
                - connection_list_init
            - BranchSide:      'smtp-server-connection.c:821,9'
              BranchSideFuncs:
                - connection_list_init
      Callsites:
        - Src:             'smtp-server-connection.c:821,9'
          Dst:             connection_list_init
    - functionName:    smtp_server_connection_trigger_output
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 796
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - o_stream_set_flush_pending
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:797,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:797,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - o_stream_set_flush_pending
                - e_debug
            - BranchSide:      'smtp-server-connection.c:798,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - o_stream_set_flush_pending
                - e_debug
        - Branch String:   'smtp-server-connection.c:798,3'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:798,3'
              BranchSideFuncs:
                - e_debug
                - o_stream_set_flush_pending
            - BranchSide:      'smtp-server-connection.c:798,3'
              BranchSideFuncs:
                - event_send_abort
                - o_stream_set_flush_pending
      Callsites:
        - Src:             'smtp-server-connection.c:798,3'
          Dst:             event_want_level
        - Src:             'smtp-server-connection.c:798,3'
          Dst:             e_debug
        - Src:             'smtp-server-connection.c:798,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-connection.c:799,3'
          Dst:             o_stream_set_flush_pending
    - functionName:    smtp_server_connection_uncork
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - o_stream_uncork_flush
        - smtp_server_connection_handle_output_error
        - smtp_server_connection_trigger_output
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:737,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:737,6'
              BranchSideFuncs:
                - o_stream_uncork_flush
                - smtp_server_connection_trigger_output
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:738,29'
              BranchSideFuncs:
                - o_stream_uncork_flush
                - smtp_server_connection_trigger_output
                - smtp_server_connection_handle_output_error
        - Branch String:   'smtp-server-connection.c:738,7'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:739,47'
              BranchSideFuncs:
                - smtp_server_connection_handle_output_error
            - BranchSide:      'smtp-server-connection.c:742,41'
              BranchSideFuncs:
                - smtp_server_connection_trigger_output
      Callsites:
        - Src:             'smtp-server-connection.c:738,7'
          Dst:             o_stream_uncork_flush
        - Src:             'smtp-server-connection.c:739,4'
          Dst:             smtp_server_connection_handle_output_error
        - Src:             'smtp-server-connection.c:742,3'
          Dst:             smtp_server_connection_trigger_output
    - functionName:    smtp_server_connection_cork
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_cork
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:730,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:730,6'
              BranchSideFuncs:
                - o_stream_cork
            - BranchSide:      'smtp-server-connection.c:731,17'
              BranchSideFuncs:
                - o_stream_cork
      Callsites:
        - Src:             'smtp-server-connection.c:731,3'
          Dst:             o_stream_cork
    - functionName:    smtp_server_connection_pending_command_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_command_parser_pending_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:696,6'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:697,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-connection.c:698,42'
              BranchSideFuncs:
                - smtp_command_parser_pending_data
      Callsites:
        - Src:             'smtp-server-connection.c:698,9'
          Dst:             smtp_command_parser_pending_data
    - functionName:    smtp_server_connection_set_ssl_streams
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - input
        - output
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_set_streams
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:208,2'
          Dst:             smtp_server_connection_set_streams
    - functionName:    smtp_server_connection_set_streams
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - input
        - output
      BBCount:         7
      ICount:          86
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_ref
        - i_stream_unref
        - o_stream_ref
        - o_stream_set_no_error_handling
        - o_stream_unref
        - smtp_server_connection_streams_changed
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:186,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:186,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:186,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - o_stream_set_no_error_handling
                - i_stream_unref
                - o_stream_unref
                - smtp_server_connection_streams_changed
      Callsites:
        - Src:             'smtp-server-connection.c:186,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:189,2'
          Dst:             i_stream_ref
        - Src:             'smtp-server-connection.c:192,2'
          Dst:             o_stream_ref
        - Src:             'smtp-server-connection.c:193,2'
          Dst:             o_stream_set_no_error_handling
        - Src:             'smtp-server-connection.c:195,2'
          Dst:             i_stream_unref
        - Src:             'smtp-server-connection.c:196,2'
          Dst:             o_stream_unref
        - Src:             'smtp-server-connection.c:198,2'
          Dst:             smtp_server_connection_streams_changed
    - functionName:    smtp_server_connection_input_capture
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - callback
        - context
      BBCount:         10
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - connection_input_halt
        - i_panic
        - i_stream_set_input_pending
        - io_add_istream
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-connection.c:143,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:143,2'
              BranchSideFuncs:
                - connection_input_halt
                - i_stream_set_input_pending
                - io_add_istream
                - i_panic
            - BranchSide:      'smtp-server-connection.c:143,2'
              BranchSideFuncs:
                - connection_input_halt
                - i_stream_set_input_pending
                - io_add_istream
                - i_panic
        - Branch String:   'smtp-server-connection.c:143,2'
          Branch Sides:
            - BranchSide:      'smtp-server-connection.c:143,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-connection.c:143,2'
              BranchSideFuncs:
                - connection_input_halt
                - i_stream_set_input_pending
                - io_add_istream
      Callsites:
        - Src:             'smtp-server-connection.c:143,2'
          Dst:             i_panic
        - Src:             'smtp-server-connection.c:144,2'
          Dst:             connection_input_halt
        - Src:             'smtp-server-connection.c:145,2'
          Dst:             i_stream_set_input_pending
        - Src:             'smtp-server-connection.c:146,18'
          Dst:             io_add_istream
    - functionName:    smtp_server_connection_get_stats
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_connection_update_stats
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-connection.c:61,2'
          Dst:             smtp_server_connection_update_stats
    - functionName:    smtp_server_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_connection_switch_ioloop
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server.c:131,2'
          Branch Sides:
            - BranchSide:      'smtp-server.c:133,37'
              BranchSideFuncs:
                - smtp_server_connection_switch_ioloop
            - BranchSide:      'smtp-server.c:137,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server.c:135,3'
          Dst:             smtp_server_connection_switch_ioloop
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_deinit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _server
      BBCount:         8
      ICount:          63
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - connection_list_deinit
        - event_unref
        - pool_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server.c:117,2'
          Branch Sides:
            - BranchSide:      'smtp-server.c:117,2'
              BranchSideFuncs:
                - pool_unref.839
                - event_unref
                - pool_unref.839
            - BranchSide:      'smtp-server.c:117,2'
              BranchSideFuncs:
                - event_unref
                - pool_unref.839
      Callsites:
        - Src:             'smtp-server.c:115,2'
          Dst:             connection_list_deinit
        - Src:             'smtp-server.c:117,2'
          Dst:             pool_unref
        - Src:             'smtp-server.c:118,2'
          Dst:             event_unref
        - Src:             'smtp-server.c:119,2'
          Dst:             pool_unref
    - functionName:    smtp_protocol_name
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-common.h'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - proto
      BBCount:         8
      ICount:          36
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   './smtp-common.h:24,2'
          Branch Sides:
            - BranchSide:      './smtp-common.h:26,3'
              BranchSideFuncs: []
            - BranchSide:      './smtp-common.h:28,3'
              BranchSideFuncs: []
            - BranchSide:      './smtp-common.h:30,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             './smtp-common.h:32,2'
          Dst:             i_unreached
    - functionName:    smtp_server_event_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - server
        - event
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_category
        - event_add_str
        - smtp_protocol_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server.c:106,2'
          Dst:             event_add_category
        - Src:             'smtp-server.c:108,9'
          Dst:             smtp_protocol_name
        - Src:             'smtp-server.c:107,2'
          Dst:             event_add_str
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server.c'
      linkageType:     externalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
      BBCount:         36
      ICount:          483
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - event_create
        - event_set_forced_debug
        - malloc_multiply_check
        - my_hostdomain
        - p_malloc
        - p_strarray_dup
        - p_strdup
        - p_strdup_empty
        - pool_alloconly_create
        - pool_ref
        - smtp_server_commands_init
        - smtp_server_connection_list_init
        - smtp_server_event_init
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server.c:41,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:42,21'
              BranchSideFuncs:
                - pool_ref.851
                - my_hostdomain
                - p_strdup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server.c:46,6'
              BranchSideFuncs:
                - my_hostdomain
                - p_strdup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-server.c:46,28'
          Branch Sides:
            - BranchSide:      'smtp-server.c:46,32'
              BranchSideFuncs:
                - my_hostdomain
                - p_strdup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server.c:49,35'
              BranchSideFuncs:
                - my_hostdomain
                - p_strdup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
        - Branch String:   'smtp-server.c:46,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:47,35'
              BranchSideFuncs:
                - p_strdup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
            - BranchSide:      'smtp-server.c:49,35'
              BranchSideFuncs:
                - my_hostdomain
                - p_strdup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
        - Branch String:   'smtp-server.c:50,34'
          Branch Sides:
            - BranchSide:      'smtp-server.c:50,38'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
                - p_strdup
            - BranchSide:      'smtp-server.c:53,3'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server.c:50,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:51,41'
              BranchSideFuncs:
                - p_strdup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server.c:53,3'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server.c:54,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:55,3'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server.c:57,30'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server.c:61,40'
          Branch Sides:
            - BranchSide:      'smtp-server.c:61,2'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server.c:62,3'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server.c:63,34'
          Branch Sides:
            - BranchSide:      'smtp-server.c:63,2'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server.c:64,3'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server.c:69,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:71,19'
              BranchSideFuncs:
                - p_strarray_dup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
            - BranchSide:      'smtp-server.c:73,6'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
                - p_strarray_dup
        - Branch String:   'smtp-server.c:73,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:75,19'
              BranchSideFuncs:
                - p_strarray_dup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
            - BranchSide:      'smtp-server.c:77,6'
              BranchSideFuncs:
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
                - p_strarray_dup
        - Branch String:   'smtp-server.c:77,6'
          Branch Sides:
            - BranchSide:      'smtp-server.c:77,6'
              BranchSideFuncs:
                - p_strarray_dup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
            - BranchSide:      'smtp-server.c:79,19'
              BranchSideFuncs:
                - p_strarray_dup
                - event_create
                - smtp_server_event_init
                - event_set_forced_debug
                - smtp_server_connection_list_init
                - smtp_server_commands_init
      Callsites:
        - Src:             'smtp-server.c:33,9'
          Dst:             pool_alloconly_create
        - Src:             'smtp-server.c:34,11'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server.c:34,11'
          Dst:             p_malloc
        - Src:             'smtp-server.c:38,3'
          Dst:             p_strdup
        - Src:             'smtp-server.c:39,27'
          Dst:             p_strdup_empty
        - Src:             'smtp-server.c:43,3'
          Dst:             pool_ref
        - Src:             'smtp-server.c:47,26'
          Dst:             p_strdup
        - Src:             'smtp-server.c:49,41'
          Dst:             my_hostdomain
        - Src:             'smtp-server.c:49,26'
          Dst:             p_strdup
        - Src:             'smtp-server.c:51,32'
          Dst:             p_strdup
        - Src:             'smtp-server.c:71,4'
          Dst:             p_strarray_dup
        - Src:             'smtp-server.c:75,4'
          Dst:             p_strarray_dup
        - Src:             'smtp-server.c:79,4'
          Dst:             p_strarray_dup
        - Src:             'smtp-server.c:95,18'
          Dst:             event_create
        - Src:             'smtp-server.c:96,2'
          Dst:             smtp_server_event_init
        - Src:             'smtp-server.c:97,2'
          Dst:             event_set_forced_debug
        - Src:             'smtp-server.c:99,22'
          Dst:             smtp_server_connection_list_init
        - Src:             'smtp-server.c:100,2'
          Dst:             smtp_server_commands_init
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.921
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.921
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_parse_ehlo_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - key_r
        - params_r
      BBCount:         35
      ICount:          300
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - __ctype_b_loc
        - array_append_i
        - array_append_space_i
        - array_create_i
        - array_idx_i
        - malloc_multiply_check
        - p_malloc
        - p_strdup_until
        - smtp_char_is_ehlo_param
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:255,33'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:255,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:256,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:255,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:256,3'
              BranchSideFuncs:
                - p_strdup_until
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - malloc_multiply_check.930
                - p_malloc.932
                - __ctype_b_loc
            - BranchSide:      'smtp-syntax.c:259,2'
              BranchSideFuncs:
                - p_strdup_until
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - malloc_multiply_check.930
                - p_malloc.932
                - __ctype_b_loc
        - Branch String:   'smtp-syntax.c:261,35'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:261,2'
              BranchSideFuncs:
                - __ctype_b_loc
                - p_strdup_until
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - malloc_multiply_check.930
                - p_malloc.932
            - BranchSide:      'smtp-syntax.c:262,10'
              BranchSideFuncs:
                - __ctype_b_loc
                - p_strdup_until
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - malloc_multiply_check.930
                - p_malloc.932
        - Branch String:   'smtp-syntax.c:261,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:263,3'
              BranchSideFuncs:
                - p_strdup_until
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - malloc_multiply_check.930
                - p_malloc.932
                - __ctype_b_loc
            - BranchSide:      'smtp-syntax.c:265,26'
              BranchSideFuncs:
                - p_strdup_until
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - malloc_multiply_check.930
                - p_malloc.932
        - Branch String:   'smtp-syntax.c:267,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:268,15'
              BranchSideFuncs:
                - malloc_multiply_check.930
                - p_malloc.932
            - BranchSide:      'smtp-syntax.c:271,7'
              BranchSideFuncs:
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
        - Branch String:   'smtp-syntax.c:271,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:272,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:275,2'
              BranchSideFuncs:
                - array_create_i.929
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
        - Branch String:   'smtp-syntax.c:279,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:280,8'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - p_strdup_until
                - array_append_i.928
            - BranchSide:      'smtp-syntax.c:299,25'
              BranchSideFuncs:
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
        - Branch String:   'smtp-syntax.c:280,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:281,8'
              BranchSideFuncs:
                - p_strdup_until
                - array_append_i.928
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
            - BranchSide:      'smtp-syntax.c:291,40'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - p_strdup_until
                - array_append_i.928
        - Branch String:   'smtp-syntax.c:281,37'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:282,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:283,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:281,8'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:283,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:287,27'
              BranchSideFuncs:
                - p_strdup_until
                - array_append_i.928
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
        - Branch String:   'smtp-syntax.c:291,14'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:0,0'
              BranchSideFuncs:
                - p_strdup_until
                - array_append_i.928
                - array_append_space_i.927
                - array_idx_i.922
                - smtp_char_is_ehlo_param
                - p_strdup_until
                - array_append_i.928
            - BranchSide:      'smtp-syntax.c:292,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-syntax.c:255,37'
          Dst:             __ctype_b_loc
        - Src:             'smtp-syntax.c:262,10'
          Dst:             __ctype_b_loc
        - Src:             'smtp-syntax.c:265,11'
          Dst:             p_strdup_until
        - Src:             'smtp-syntax.c:268,15'
          Dst:             malloc_multiply_check
        - Src:             'smtp-syntax.c:268,15'
          Dst:             p_malloc
        - Src:             'smtp-syntax.c:278,2'
          Dst:             array_create_i
        - Src:             'smtp-syntax.c:287,12'
          Dst:             p_strdup_until
        - Src:             'smtp-syntax.c:289,4'
          Dst:             array_append_i
        - Src:             'smtp-syntax.c:291,15'
          Dst:             smtp_char_is_ehlo_param
        - Src:             'smtp-syntax.c:299,10'
          Dst:             p_strdup_until
        - Src:             'smtp-syntax.c:300,2'
          Dst:             array_append_i
        - Src:             'smtp-syntax.c:301,2'
          Dst:             array_append_space_i
        - Src:             'smtp-syntax.c:302,14'
          Dst:             array_idx_i
    - functionName:    __ctype_b_loc
      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:    33
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_char_is_ehlo_param
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_ehlo_line_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ehlo_line
        - key_r
        - params_r
        - error_r
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - pool_datastack_create
        - smtp_parse_ehlo_line
        - smtp_parser_init
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:315,24'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:315,28'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:316,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:315,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:316,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:320,28'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_ehlo_line
        - Branch String:   'smtp-syntax.c:322,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:323,21'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:326,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-syntax.c:320,28'
          Dst:             pool_datastack_create
        - Src:             'smtp-syntax.c:320,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-syntax.c:322,6'
          Dst:             smtp_parse_ehlo_line
    - functionName:    smtp_ehlo_params_str_is_valid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
      BBCount:         14
      ICount:          72
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - smtp_char_is_ehlo_param
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:222,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:223,8'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
            - BranchSide:      'smtp-syntax.c:234,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:223,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:224,8'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
            - BranchSide:      'smtp-syntax.c:229,9'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
        - Branch String:   'smtp-syntax.c:224,8'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:225,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:226,10'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
        - Branch String:   'smtp-syntax.c:231,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:232,4'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
            - BranchSide:      'smtp-syntax.c:233,2'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
      Callsites:
        - Src:             'smtp-syntax.c:231,8'
          Dst:             smtp_char_is_ehlo_param
    - functionName:    smtp_ehlo_params_are_valid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
      BBCount:         11
      ICount:          50
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_ehlo_param_is_valid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:205,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:206,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:208,2'
              BranchSideFuncs:
                - smtp_ehlo_param_is_valid
        - Branch String:   'smtp-syntax.c:208,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:209,34'
              BranchSideFuncs:
                - smtp_ehlo_param_is_valid
            - BranchSide:      'smtp-syntax.c:214,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:209,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:210,4'
              BranchSideFuncs:
                - smtp_ehlo_param_is_valid
            - BranchSide:      'smtp-syntax.c:211,9'
              BranchSideFuncs:
                - smtp_ehlo_param_is_valid
      Callsites:
        - Src:             'smtp-syntax.c:209,8'
          Dst:             smtp_ehlo_param_is_valid
    - functionName:    smtp_ehlo_param_is_valid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - param
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_char_is_ehlo_param
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:196,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:197,33'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
            - BranchSide:      'smtp-syntax.c:200,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:197,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:198,4'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
            - BranchSide:      'smtp-syntax.c:199,2'
              BranchSideFuncs:
                - smtp_char_is_ehlo_param
      Callsites:
        - Src:             'smtp-syntax.c:197,8'
          Dst:             smtp_char_is_ehlo_param
    - functionName:    smtp_ehlo_keyword_is_valid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - keyword
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __ctype_b_loc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:185,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:186,8'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'smtp-syntax.c:189,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:186,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:187,4'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'smtp-syntax.c:188,2'
              BranchSideFuncs:
                - __ctype_b_loc
      Callsites:
        - Src:             'smtp-syntax.c:186,8'
          Dst:             __ctype_b_loc
    - functionName:    smtp_helo_domain_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - helo
        - allow_literal
        - domain_r
      BBCount:         18
      ICount:          93
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - pool_datastack_create
        - smtp_parser_init
        - smtp_parser_parse_address_literal
        - smtp_parser_parse_domain
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:165,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:166,7'
              BranchSideFuncs:
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-syntax.c:172,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:166,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:168,14'
              BranchSideFuncs:
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-syntax.c:170,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:172,15'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:172,26'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:173,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:172,43'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:172,54'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:174,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:172,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:173,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:174,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-syntax.c:162,28'
          Dst:             pool_datastack_create
        - Src:             'smtp-syntax.c:162,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-syntax.c:164,8'
          Dst:             smtp_parser_parse_domain
        - Src:             'smtp-syntax.c:167,10'
          Dst:             smtp_parser_parse_address_literal
    - functionName:    smtp_char_is_xtext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_xtext_encode
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - out
        - data
        - size
      BBCount:         15
      ICount:          96
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - smtp_char_is_xtext
        - str_append_data
        - str_printfa
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:138,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:138,2'
              BranchSideFuncs:
                - str_append_data.943
                - str_printfa
                - smtp_char_is_xtext
            - BranchSide:      'smtp-syntax.c:139,12'
              BranchSideFuncs:
                - str_append_data.943
                - str_printfa
                - smtp_char_is_xtext
        - Branch String:   'smtp-syntax.c:140,19'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:140,42'
              BranchSideFuncs:
                - smtp_char_is_xtext
                - str_append_data.943
                - str_printfa
            - BranchSide:      'smtp-syntax.c:140,3'
              BranchSideFuncs:
                - str_append_data.943
                - str_printfa
                - smtp_char_is_xtext
        - Branch String:   'smtp-syntax.c:140,3'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:141,5'
              BranchSideFuncs:
                - str_append_data.943
                - str_printfa
                - smtp_char_is_xtext
            - BranchSide:      'smtp-syntax.c:143,19'
              BranchSideFuncs:
                - str_append_data.943
                - str_printfa
                - smtp_char_is_xtext
        - Branch String:   'smtp-syntax.c:144,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:145,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:147,15'
              BranchSideFuncs:
                - str_printfa
                - str_append_data.943
                - smtp_char_is_xtext
      Callsites:
        - Src:             'smtp-syntax.c:140,22'
          Dst:             smtp_char_is_xtext
        - Src:             'smtp-syntax.c:143,3'
          Dst:             str_append_data
        - Src:             'smtp-syntax.c:147,3'
          Dst:             str_printfa
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    smtp_xtext_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - xtext
        - value_r
        - error_r
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_xtext_decode
        - str_c
        - t_str_new
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:118,20'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:118,24'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:119,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:118,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:119,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:123,10'
              BranchSideFuncs:
                - t_str_new
                - smtp_xtext_decode
                - str_c
        - Branch String:   'smtp-syntax.c:125,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:126,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:128,19'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'smtp-syntax.c:123,10'
          Dst:             t_str_new
        - Src:             'smtp-syntax.c:124,8'
          Dst:             smtp_xtext_decode
        - Src:             'smtp-syntax.c:128,13'
          Dst:             str_c
    - functionName:    smtp_xtext_decode
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - xtext
        - allow_nul
        - error_r
      BBCount:         18
      ICount:          105
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - pool_datastack_create
        - smtp_parser_init
        - smtp_parser_parse_xtext
        - str_c
        - str_len
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:89,20'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:89,24'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:90,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:89,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:90,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:92,28'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parser_parse_xtext
                - str_c
                - strlen
                - str_len.947
        - Branch String:   'smtp-syntax.c:94,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:95,21'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:98,13'
              BranchSideFuncs:
                - str_c
                - strlen
                - str_len.947
        - Branch String:   'smtp-syntax.c:98,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:99,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:102,7'
              BranchSideFuncs:
                - str_c
                - strlen
                - str_len.947
        - Branch String:   'smtp-syntax.c:102,17'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:102,33'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:106,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:102,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:103,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:106,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-syntax.c:92,28'
          Dst:             pool_datastack_create
        - Src:             'smtp-syntax.c:92,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-syntax.c:94,6'
          Dst:             smtp_parser_parse_xtext
        - Src:             'smtp-syntax.c:102,27'
          Dst:             str_c
        - Src:             'smtp-syntax.c:102,20'
          Dst:             strlen
        - Src:             'smtp-syntax.c:102,42'
          Dst:             str_len
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    smtp_char_is_qtext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_char_is_qpair
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - cstr
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:72,32'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:72,2'
          Dst:             buffer_insert
    - functionName:    smtp_char_is_atext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_string_write
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - value
      BBCount:         36
      ICount:          188
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - smtp_char_is_atext
        - smtp_char_is_qpair
        - smtp_char_is_qtext
        - str_append_c
        - str_append_data
        - str_insert
        - str_len
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:48,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:49,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:50,29'
              BranchSideFuncs:
                - strlen
                - str_append_c.949
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - i_panic
                - i_panic
                - str_insert.950
                - smtp_char_is_atext
        - Branch String:   'smtp-syntax.c:52,2'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:53,12'
              BranchSideFuncs:
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - i_panic
                - i_panic
                - str_insert.950
                - smtp_char_is_atext
            - BranchSide:      'smtp-syntax.c:76,6'
              BranchSideFuncs:
                - str_append_c.949
        - Branch String:   'smtp-syntax.c:54,19'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:54,42'
              BranchSideFuncs:
                - smtp_char_is_atext
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - i_panic
                - i_panic
                - str_insert.950
            - BranchSide:      'smtp-syntax.c:54,3'
              BranchSideFuncs:
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - smtp_char_is_atext
                - i_panic
                - i_panic
                - str_insert.950
        - Branch String:   'smtp-syntax.c:54,3'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:55,5'
              BranchSideFuncs:
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - i_panic
                - i_panic
                - str_insert.950
                - smtp_char_is_atext
            - BranchSide:      'smtp-syntax.c:57,8'
              BranchSideFuncs:
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - smtp_char_is_atext
                - i_panic
                - i_panic
                - str_insert.950
        - Branch String:   'smtp-syntax.c:57,15'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:57,18'
              BranchSideFuncs:
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - str_insert.950
                - smtp_char_is_atext
                - i_panic
                - i_panic
            - BranchSide:      'smtp-syntax.c:62,19'
              BranchSideFuncs:
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - str_insert.950
                - smtp_char_is_atext
                - i_panic
                - i_panic
        - Branch String:   'smtp-syntax.c:57,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:58,11'
              BranchSideFuncs:
                - str_insert.950
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - smtp_char_is_atext
                - i_panic
                - i_panic
            - BranchSide:      'smtp-syntax.c:62,19'
              BranchSideFuncs:
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - str_insert.950
                - smtp_char_is_atext
                - i_panic
                - i_panic
        - Branch String:   'smtp-syntax.c:63,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:64,4'
              BranchSideFuncs:
                - str_append_c.949
            - BranchSide:      'smtp-syntax.c:66,3'
              BranchSideFuncs:
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - str_append_data.943
                - str_insert.950
                - smtp_char_is_atext
                - i_panic
                - i_panic
        - Branch String:   'smtp-syntax.c:66,3'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:66,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-syntax.c:67,3'
              BranchSideFuncs:
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - str_append_data.943
                - i_panic
                - str_insert.950
                - smtp_char_is_atext
                - i_panic
        - Branch String:   'smtp-syntax.c:67,3'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:67,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-syntax.c:69,28'
              BranchSideFuncs:
                - smtp_char_is_qtext
                - str_append_c.949
                - str_append_c.949
                - str_append_c.949
                - str_append_data.943
                - smtp_char_is_qpair
                - i_panic
                - i_panic
                - str_insert.950
                - smtp_char_is_atext
        - Branch String:   'smtp-syntax.c:69,7'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:70,4'
              BranchSideFuncs:
                - str_append_c.949
                - str_append_c.949
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - i_panic
                - i_panic
                - str_insert.950
                - smtp_char_is_atext
            - BranchSide:      'smtp-syntax.c:71,3'
              BranchSideFuncs:
                - str_append_c.949
                - str_append_c.949
                - str_append_data.943
                - smtp_char_is_qpair
                - smtp_char_is_qtext
                - str_append_c.949
                - i_panic
                - i_panic
                - str_insert.950
                - smtp_char_is_atext
        - Branch String:   'smtp-syntax.c:76,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:76,6'
              BranchSideFuncs:
                - str_append_c.949
            - BranchSide:      'smtp-syntax.c:77,3'
              BranchSideFuncs:
                - str_append_c.949
      Callsites:
        - Src:             'smtp-syntax.c:46,17'
          Dst:             str_len
        - Src:             'smtp-syntax.c:51,13'
          Dst:             strlen
        - Src:             'smtp-syntax.c:54,22'
          Dst:             smtp_char_is_atext
        - Src:             'smtp-syntax.c:59,4'
          Dst:             str_insert
        - Src:             'smtp-syntax.c:62,3'
          Dst:             str_append_data
        - Src:             'smtp-syntax.c:66,3'
          Dst:             i_panic
        - Src:             'smtp-syntax.c:67,3'
          Dst:             smtp_char_is_qpair
        - Src:             'smtp-syntax.c:67,3'
          Dst:             i_panic
        - Src:             'smtp-syntax.c:69,8'
          Dst:             smtp_char_is_qtext
        - Src:             'smtp-syntax.c:70,4'
          Dst:             str_append_c
        - Src:             'smtp-syntax.c:71,3'
          Dst:             str_append_c
        - Src:             'smtp-syntax.c:77,3'
          Dst:             str_append_c
    - functionName:    smtp_string_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-syntax.c'
      linkageType:     externalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - string
        - value_r
        - error_r
      BBCount:         13
      ICount:          84
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - pool_datastack_create
        - smtp_parser_init
        - smtp_parser_parse_string
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-syntax.c:24,21'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:24,25'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:25,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:24,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:25,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:29,28'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parser_parse_string
        - Branch String:   'smtp-syntax.c:31,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:32,21'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:35,13'
              BranchSideFuncs: []
        - Branch String:   'smtp-syntax.c:35,6'
          Branch Sides:
            - BranchSide:      'smtp-syntax.c:36,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-syntax.c:39,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-syntax.c:29,28'
          Dst:             pool_datastack_create
        - Src:             'smtp-syntax.c:29,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-syntax.c:31,6'
          Dst:             smtp_parser_parse_string
    - functionName:    smtp_parse_source_route
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         28
      ICount:          167
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - smtp_parser_parse_domain
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:203,33'
          Branch Sides:
            - BranchSide:      'smtp-address.c:203,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:204,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:203,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:204,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:205,2'
              BranchSideFuncs:
                - smtp_parser_parse_domain
        - Branch String:   'smtp-address.c:209,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:210,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:216,7'
              BranchSideFuncs:
                - smtp_parser_parse_domain
        - Branch String:   'smtp-address.c:216,34'
          Branch Sides:
            - BranchSide:      'smtp-address.c:216,38'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:217,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:216,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:217,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:218,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
        - Branch String:   'smtp-address.c:221,34'
          Branch Sides:
            - BranchSide:      'smtp-address.c:221,38'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:222,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:221,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:222,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:225,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
        - Branch String:   'smtp-address.c:229,33'
          Branch Sides:
            - BranchSide:      'smtp-address.c:229,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:230,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:229,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:230,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:233,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:209,7'
          Dst:             smtp_parser_parse_domain
    - functionName:    smtp_parser_parse_dot_string
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - value_r
      BBCount:         24
      ICount:          141
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - smtp_char_is_atext
        - t_strndup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:67,33'
          Branch Sides:
            - BranchSide:      'smtp-address.c:68,28'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:69,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:68,41'
          Branch Sides:
            - BranchSide:      'smtp-address.c:68,45'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_atext.1052
            - BranchSide:      'smtp-address.c:70,2'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_atext.1052
        - Branch String:   'smtp-address.c:67,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:69,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:70,2'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_atext.1052
        - Branch String:   'smtp-address.c:72,35'
          Branch Sides:
            - BranchSide:      'smtp-address.c:72,2'
              BranchSideFuncs:
                - smtp_char_is_atext.1052
                - t_strndup
            - BranchSide:      'smtp-address.c:73,30'
              BranchSideFuncs:
                - smtp_char_is_atext.1052
                - t_strndup
        - Branch String:   'smtp-address.c:72,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:74,3'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_atext.1052
            - BranchSide:      'smtp-address.c:76,6'
              BranchSideFuncs:
                - t_strndup
        - Branch String:   'smtp-address.c:76,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:77,24'
              BranchSideFuncs:
                - t_strndup
            - BranchSide:      'smtp-address.c:78,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:68,8'
          Dst:             smtp_char_is_atext
        - Src:             'smtp-address.c:73,10'
          Dst:             smtp_char_is_atext
        - Src:             'smtp-address.c:77,14'
          Dst:             t_strndup
    - functionName:    smtp_char_is_atext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_address_parser_find_end
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - aparser
        - flags
      BBCount:         20
      ICount:          146
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - smtp_address_parse_any
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:100,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:101,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:103,6'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
        - Branch String:   'smtp-address.c:103,21'
          Branch Sides:
            - BranchSide:      'smtp-address.c:104,6'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
            - BranchSide:      'smtp-address.c:106,29'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
        - Branch String:   'smtp-address.c:103,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:105,16'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
            - BranchSide:      'smtp-address.c:106,29'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
        - Branch String:   'smtp-address.c:106,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:107,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:111,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-address.c:113,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:114,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-address.c:117,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:114,3'
          Branch Sides:
            - BranchSide:      'smtp-address.c:114,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-address.c:115,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:106,6'
          Dst:             smtp_address_parse_any
        - Src:             'smtp-address.c:114,3'
          Dst:             i_panic
    - functionName:    smtp_address_parse_any
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
        - address_r
        - endp_r
      BBCount:         65
      ICount:          323
      EdgeCount:       85
      CyclomaticComplexity: 22
      functionsReached:
        - strlen
        - t_strdup_until
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-address.c:585,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:586,13'
              BranchSideFuncs:
                - strlen
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:588,39'
              BranchSideFuncs:
                - strlen
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:590,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:591,8'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:595,7'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:595,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:596,10'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:600,2'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:600,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:601,7'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:640,6'
              BranchSideFuncs:
                - t_strdup_until
        - Branch String:   'smtp-address.c:601,14'
          Branch Sides:
            - BranchSide:      'smtp-address.c:601,18'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:609,12'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:601,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:602,5'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:609,12'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:603,18'
          Branch Sides:
            - BranchSide:      'smtp-address.c:603,22'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:604,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:603,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:604,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:605,5'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:606,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:607,5'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'smtp-address.c:608,3'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:609,3'
          Branch Sides:
            - BranchSide:      'smtp-address.c:611,11'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:614,9'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:625,9'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:634,9'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:614,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:615,9'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:623,4'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:615,9'
          Branch Sides:
            - BranchSide:      'smtp-address.c:616,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:617,9'
              BranchSideFuncs:
                - t_strdup_until
        - Branch String:   'smtp-address.c:617,9'
          Branch Sides:
            - BranchSide:      'smtp-address.c:618,34'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'smtp-address.c:619,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:619,9'
          Branch Sides:
            - BranchSide:      'smtp-address.c:620,30'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:621,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:625,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:626,9'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
            - BranchSide:      'smtp-address.c:632,4'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:626,9'
          Branch Sides:
            - BranchSide:      'smtp-address.c:627,34'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'smtp-address.c:628,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:628,9'
          Branch Sides:
            - BranchSide:      'smtp-address.c:629,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:630,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:634,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:635,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:636,4'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:640,13'
          Branch Sides:
            - BranchSide:      'smtp-address.c:640,16'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:641,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:640,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:641,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:642,6'
              BranchSideFuncs:
                - t_strdup_until
        - Branch String:   'smtp-address.c:642,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:643,31'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'smtp-address.c:644,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:644,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:645,27'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:646,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:589,13'
          Dst:             strlen
        - Src:             'smtp-address.c:618,19'
          Dst:             t_strdup_until
        - Src:             'smtp-address.c:627,19'
          Dst:             t_strdup_until
        - Src:             'smtp-address.c:643,16'
          Dst:             t_strdup_until
    - functionName:    smtp_parse_localpart
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - localpart_r
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_parser_parse_dot_string
        - smtp_parser_parse_quoted_string
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:86,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:87,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:89,38'
              BranchSideFuncs:
                - smtp_parser_parse_dot_string
      Callsites:
        - Src:             'smtp-address.c:86,13'
          Dst:             smtp_parser_parse_quoted_string
        - Src:             'smtp-address.c:89,9'
          Dst:             smtp_parser_parse_dot_string
    - functionName:    smtp_address_cmp_icase
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 958
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - address1
        - address2
      BBCount:         11
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - null_strcasecmp
        - smtp_address_isnull
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-address.c:951,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:952,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:953,11'
              BranchSideFuncs:
                - null_strcasecmp
                - null_strcasecmp
        - Branch String:   'smtp-address.c:955,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:956,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:957,25'
              BranchSideFuncs:
                - null_strcasecmp
      Callsites:
        - Src:             'smtp-address.c:949,10'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:950,10'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:955,13'
          Dst:             null_strcasecmp
        - Src:             'smtp-address.c:957,9'
          Dst:             null_strcasecmp
    - functionName:    smtp_address_isnull
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-address.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:
        - Branch String:   './smtp-address.h:203,26'
          Branch Sides:
            - BranchSide:      './smtp-address.h:203,26'
              BranchSideFuncs: []
            - BranchSide:      './smtp-address.h:203,29'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_address_cmp
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 928
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - address1
        - address2
      BBCount:         11
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - null_strcasecmp
        - null_strcmp
        - smtp_address_isnull
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-address.c:934,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:935,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:936,11'
              BranchSideFuncs:
                - null_strcasecmp
                - null_strcmp
        - Branch String:   'smtp-address.c:938,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:939,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:940,21'
              BranchSideFuncs:
                - null_strcmp
      Callsites:
        - Src:             'smtp-address.c:932,10'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:933,10'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:938,13'
          Dst:             null_strcasecmp
        - Src:             'smtp-address.c:940,9'
          Dst:             null_strcmp
    - functionName:    smtp_address_add_detail_temp
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - address
        - detail
        - delim_c
      BBCount:         7
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - smtp_address_isnull
        - t_malloc0
        - t_strconcat
        - t_strdup_empty
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-address.c:916,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:916,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-address.c:916,2'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - t_malloc0
                - t_strconcat
                - t_strdup_empty
      Callsites:
        - Src:             'smtp-address.c:916,2'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:916,2'
          Dst:             i_panic
        - Src:             'smtp-address.c:918,13'
          Dst:             malloc_multiply_check
        - Src:             'smtp-address.c:918,13'
          Dst:             t_malloc0
        - Src:             'smtp-address.c:919,24'
          Dst:             t_strconcat
        - Src:             'smtp-address.c:921,21'
          Dst:             t_strdup_empty
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    smtp_address_add_detail
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 895
      functionLinenumberEnd: 906
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - pool
        - address
        - detail
        - delim_c
      BBCount:         7
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
        - p_strconcat
        - p_strdup_empty
        - smtp_address_isnull
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-address.c:899,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:899,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-address.c:899,2'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
                - p_strconcat
                - p_strdup_empty
      Callsites:
        - Src:             'smtp-address.c:899,2'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:899,2'
          Dst:             i_panic
        - Src:             'smtp-address.c:901,13'
          Dst:             malloc_multiply_check
        - Src:             'smtp-address.c:901,13'
          Dst:             p_malloc
        - Src:             'smtp-address.c:902,24'
          Dst:             p_strconcat
        - Src:             'smtp-address.c:904,21'
          Dst:             p_strdup_empty
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_address_create_from_msg_temp
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 890
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - msg_addr
        - address_r
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_address_clone_temp
        - smtp_address_init_from_msg
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-address.c:884,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:885,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:888,15'
              BranchSideFuncs:
                - smtp_address_clone_temp
      Callsites:
        - Src:             'smtp-address.c:884,6'
          Dst:             smtp_address_init_from_msg
        - Src:             'smtp-address.c:888,15'
          Dst:             smtp_address_clone_temp
    - functionName:    smtp_address_init_from_msg
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 764
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
        - msg_addr
      BBCount:         20
      ICount:          113
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - smtp_char_is_qpair
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-address.c:768,32'
          Branch Sides:
            - BranchSide:      'smtp-address.c:768,36'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:769,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:768,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:769,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:774,34'
              BranchSideFuncs:
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:774,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:775,28'
              BranchSideFuncs:
                - smtp_char_is_qpair.1065
            - BranchSide:      'smtp-address.c:779,23'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:775,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:776,4'
              BranchSideFuncs:
                - smtp_char_is_qpair.1065
            - BranchSide:      'smtp-address.c:777,2'
              BranchSideFuncs:
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:780,31'
          Branch Sides:
            - BranchSide:      'smtp-address.c:780,35'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:782,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:780,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:781,21'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:782,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:775,8'
          Dst:             smtp_char_is_qpair
    - functionName:    smtp_address_clone_temp
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - src
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - malloc_multiply_check
        - t_malloc0
        - t_strdup_empty
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-address.c:860,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:861,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:863,8'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - t_malloc0
                - t_strdup_empty
                - t_strdup_empty
                - t_strdup_empty
      Callsites:
        - Src:             'smtp-address.c:863,8'
          Dst:             malloc_multiply_check
        - Src:             'smtp-address.c:863,8'
          Dst:             t_malloc0
        - Src:             'smtp-address.c:864,19'
          Dst:             t_strdup_empty
        - Src:             'smtp-address.c:865,16'
          Dst:             t_strdup_empty
        - Src:             'smtp-address.c:866,13'
          Dst:             t_strdup_empty
    - functionName:    smtp_char_is_qpair
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_address_create_temp
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 876
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - localpart
        - domain
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_clone_temp
        - smtp_address_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-address.c:875,2'
          Dst:             smtp_address_init
        - Src:             'smtp-address.c:876,9'
          Dst:             smtp_address_clone_temp
    - functionName:    smtp_address_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 752
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
        - localpart
        - domain
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-address.c:754,24'
          Branch Sides:
            - BranchSide:      'smtp-address.c:754,28'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:755,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:754,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:755,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:757,23'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:758,21'
          Branch Sides:
            - BranchSide:      'smtp-address.c:758,25'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:758,21'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:758,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:758,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:759,21'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_address_create_from_msg
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 854
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - msg_addr
        - address_r
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_address_clone
        - smtp_address_init_from_msg
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:848,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:849,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:852,34'
              BranchSideFuncs:
                - smtp_address_clone
      Callsites:
        - Src:             'smtp-address.c:848,6'
          Dst:             smtp_address_init_from_msg
        - Src:             'smtp-address.c:852,15'
          Dst:             smtp_address_clone
    - functionName:    smtp_address_clone
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 830
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - src
      BBCount:         28
      ICount:          239
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - i_memcpy
        - malloc_add_check
        - p_malloc
        - smtp_address_isnull
        - strlen
      functionUses:    11
      BranchProfiles:
        - Branch String:   'smtp-address.c:792,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:793,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:797,7'
              BranchSideFuncs:
                - smtp_address_isnull
                - strlen
                - malloc_add_check
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
                - strlen
                - malloc_add_check
        - Branch String:   'smtp-address.c:798,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:799,19'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:802,6'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
                - strlen
                - malloc_add_check
        - Branch String:   'smtp-address.c:802,26'
          Branch Sides:
            - BranchSide:      'smtp-address.c:802,30'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:806,6'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
        - Branch String:   'smtp-address.c:802,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:803,18'
              BranchSideFuncs:
                - strlen
                - malloc_add_check
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:806,6'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
        - Branch String:   'smtp-address.c:806,23'
          Branch Sides:
            - BranchSide:      'smtp-address.c:806,27'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
                - strlen
                - malloc_add_check
            - BranchSide:      'smtp-address.c:811,18'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
        - Branch String:   'smtp-address.c:806,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:807,18'
              BranchSideFuncs:
                - strlen
                - malloc_add_check
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
            - BranchSide:      'smtp-address.c:811,18'
              BranchSideFuncs:
                - p_malloc.1063
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
        - Branch String:   'smtp-address.c:813,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:814,15'
              BranchSideFuncs:
                - i_memcpy.1068
                - i_memcpy.1068
                - i_memcpy.1068
            - BranchSide:      'smtp-address.c:817,6'
              BranchSideFuncs:
                - i_memcpy.1068
                - i_memcpy.1068
        - Branch String:   'smtp-address.c:817,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:818,12'
              BranchSideFuncs:
                - i_memcpy.1068
                - i_memcpy.1068
            - BranchSide:      'smtp-address.c:821,6'
              BranchSideFuncs:
                - i_memcpy.1068
        - Branch String:   'smtp-address.c:821,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:822,9'
              BranchSideFuncs:
                - i_memcpy.1068
            - BranchSide:      'smtp-address.c:825,19'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:798,7'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:799,12'
          Dst:             strlen
        - Src:             'smtp-address.c:800,10'
          Dst:             malloc_add_check
        - Src:             'smtp-address.c:803,11'
          Dst:             strlen
        - Src:             'smtp-address.c:804,10'
          Dst:             malloc_add_check
        - Src:             'smtp-address.c:807,11'
          Dst:             strlen
        - Src:             'smtp-address.c:808,10'
          Dst:             malloc_add_check
        - Src:             'smtp-address.c:811,9'
          Dst:             p_malloc
        - Src:             'smtp-address.c:815,3'
          Dst:             i_memcpy
        - Src:             'smtp-address.c:819,3'
          Dst:             i_memcpy
        - Src:             'smtp-address.c:823,3'
          Dst:             i_memcpy
    - functionName:    malloc_add_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:38,34'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:38,37'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:39,17'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:38,65'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:38,65'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:39,17'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:38,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:38,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:41,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:40,3'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:75,2'
          Dst:             i_panic
    - functionName:    smtp_address_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - localpart
        - domain
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_clone
        - smtp_address_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-address.c:837,2'
          Dst:             smtp_address_init
        - Src:             'smtp-address.c:838,9'
          Dst:             smtp_address_clone
    - functionName:    smtp_address_encode_raw_path
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_address_encode_path
        - t_strconcat
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-address.c:740,22'
          Branch Sides:
            - BranchSide:      'smtp-address.c:740,25'
              BranchSideFuncs:
                - smtp_address_encode_path
                - t_strconcat
            - BranchSide:      'smtp-address.c:743,34'
              BranchSideFuncs:
                - smtp_address_encode_path
        - Branch String:   'smtp-address.c:740,46'
          Branch Sides:
            - BranchSide:      'smtp-address.c:740,50'
              BranchSideFuncs:
                - smtp_address_encode_path
                - t_strconcat
            - BranchSide:      'smtp-address.c:743,34'
              BranchSideFuncs:
                - smtp_address_encode_path
        - Branch String:   'smtp-address.c:740,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:741,27'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'smtp-address.c:743,34'
              BranchSideFuncs:
                - smtp_address_encode_path
      Callsites:
        - Src:             'smtp-address.c:741,10'
          Dst:             t_strconcat
        - Src:             'smtp-address.c:743,9'
          Dst:             smtp_address_encode_path
    - functionName:    smtp_address_encode_path
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_write_path
        - str_c
        - t_str_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-address.c:725,18'
          Dst:             t_str_new
        - Src:             'smtp-address.c:726,2'
          Dst:             smtp_address_write_path
        - Src:             'smtp-address.c:727,9'
          Dst:             str_c
    - functionName:    smtp_address_write_path
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - address
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_write
        - str_append_c
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-address.c:711,2'
          Dst:             str_append_c
        - Src:             'smtp-address.c:712,2'
          Dst:             smtp_address_write
        - Src:             'smtp-address.c:713,2'
          Dst:             str_append_c
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    smtp_address_write
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - address
      BBCount:         51
      ICount:          263
      EdgeCount:       67
      CyclomaticComplexity: 18
      functionsReached:
        - i_panic
        - smtp_address_isnull
        - smtp_char_is_atext
        - smtp_char_is_qpair
        - smtp_char_is_qtext
        - str_append
        - str_append_c
        - str_append_data
        - str_insert
        - str_len
        - strlen
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-address.c:660,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:661,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:662,18'
              BranchSideFuncs:
                - str_len.1080
                - strlen
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
                - str_insert.1082
                - smtp_char_is_atext.1052
        - Branch String:   'smtp-address.c:668,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:669,3'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
                - str_insert.1082
                - smtp_char_is_atext.1052
            - BranchSide:      'smtp-address.c:694,6'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
        - Branch String:   'smtp-address.c:669,19'
          Branch Sides:
            - BranchSide:      'smtp-address.c:669,42'
              BranchSideFuncs:
                - smtp_char_is_atext.1052
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
                - str_insert.1082
            - BranchSide:      'smtp-address.c:669,3'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
                - str_insert.1082
        - Branch String:   'smtp-address.c:669,3'
          Branch Sides:
            - BranchSide:      'smtp-address.c:670,5'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
                - str_insert.1082
                - smtp_char_is_atext.1052
            - BranchSide:      'smtp-address.c:672,8'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
                - str_insert.1082
        - Branch String:   'smtp-address.c:672,15'
          Branch Sides:
            - BranchSide:      'smtp-address.c:672,18'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
            - BranchSide:      'smtp-address.c:677,19'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
        - Branch String:   'smtp-address.c:672,27'
          Branch Sides:
            - BranchSide:      'smtp-address.c:672,32'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
                - str_insert.1082
            - BranchSide:      'smtp-address.c:677,19'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
        - Branch String:   'smtp-address.c:672,41'
          Branch Sides:
            - BranchSide:      'smtp-address.c:672,44'
              BranchSideFuncs:
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
            - BranchSide:      'smtp-address.c:673,11'
              BranchSideFuncs:
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
        - Branch String:   'smtp-address.c:672,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:673,11'
              BranchSideFuncs:
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
            - BranchSide:      'smtp-address.c:677,19'
              BranchSideFuncs:
                - str_append_data.1083
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
        - Branch String:   'smtp-address.c:678,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:679,4'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
            - BranchSide:      'smtp-address.c:681,8'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_append_data.1083
                - str_insert.1082
                - smtp_char_is_atext.1052
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - i_panic
        - Branch String:   'smtp-address.c:681,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:682,4'
              BranchSideFuncs:
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - i_panic
            - BranchSide:      'smtp-address.c:684,4'
              BranchSideFuncs:
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - str_insert.1082
                - smtp_char_is_atext.1052
                - i_panic
        - Branch String:   'smtp-address.c:684,4'
          Branch Sides:
            - BranchSide:      'smtp-address.c:684,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-address.c:685,29'
              BranchSideFuncs:
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - smtp_char_is_qpair.1065
                - i_panic
                - str_insert.1082
                - smtp_char_is_atext.1052
        - Branch String:   'smtp-address.c:685,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:686,5'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - i_panic
                - str_insert.1082
                - smtp_char_is_atext.1052
            - BranchSide:      'smtp-address.c:687,4'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
                - str_insert.1082
                - str_append_data.1083
                - str_append_c.1077
                - smtp_char_is_qpair.1065
                - smtp_char_is_qtext.1085
                - str_append_c.1077
                - i_panic
                - str_insert.1082
                - smtp_char_is_atext.1052
        - Branch String:   'smtp-address.c:694,18'
          Branch Sides:
            - BranchSide:      'smtp-address.c:694,22'
              BranchSideFuncs:
                - str_insert.1082
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
            - BranchSide:      'smtp-address.c:699,6'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
        - Branch String:   'smtp-address.c:694,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:695,10'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
            - BranchSide:      'smtp-address.c:699,6'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append.1086
                - str_append_c.1077
        - Branch String:   'smtp-address.c:699,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:700,3'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append_c.1077
                - str_append.1086
            - BranchSide:      'smtp-address.c:702,6'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append.1086
        - Branch String:   'smtp-address.c:702,30'
          Branch Sides:
            - BranchSide:      'smtp-address.c:702,34'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:703,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:702,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:703,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:705,2'
              BranchSideFuncs:
                - str_append_c.1077
                - str_append.1086
      Callsites:
        - Src:             'smtp-address.c:660,6'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:662,10'
          Dst:             str_len
        - Src:             'smtp-address.c:666,13'
          Dst:             strlen
        - Src:             'smtp-address.c:669,22'
          Dst:             smtp_char_is_atext
        - Src:             'smtp-address.c:674,4'
          Dst:             str_insert
        - Src:             'smtp-address.c:677,3'
          Dst:             str_append_data
        - Src:             'smtp-address.c:682,4'
          Dst:             str_append_c
        - Src:             'smtp-address.c:684,4'
          Dst:             smtp_char_is_qpair
        - Src:             'smtp-address.c:684,4'
          Dst:             i_panic
        - Src:             'smtp-address.c:685,9'
          Dst:             smtp_char_is_qtext
        - Src:             'smtp-address.c:686,5'
          Dst:             str_append_c
        - Src:             'smtp-address.c:687,4'
          Dst:             str_append_c
        - Src:             'smtp-address.c:696,3'
          Dst:             str_insert
        - Src:             'smtp-address.c:700,3'
          Dst:             str_append_c
        - Src:             'smtp-address.c:705,2'
          Dst:             str_append_c
        - Src:             'smtp-address.c:706,2'
          Dst:             str_append
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - cstr
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:72,32'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:72,2'
          Dst:             buffer_insert
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    smtp_char_is_qtext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    smtp_address_encode_raw
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 731
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
      BBCount:         11
      ICount:          56
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_address_encode
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:732,22'
          Branch Sides:
            - BranchSide:      'smtp-address.c:732,25'
              BranchSideFuncs:
                - smtp_address_encode
            - BranchSide:      'smtp-address.c:735,29'
              BranchSideFuncs:
                - smtp_address_encode
        - Branch String:   'smtp-address.c:732,46'
          Branch Sides:
            - BranchSide:      'smtp-address.c:732,50'
              BranchSideFuncs:
                - smtp_address_encode
            - BranchSide:      'smtp-address.c:735,29'
              BranchSideFuncs:
                - smtp_address_encode
        - Branch String:   'smtp-address.c:732,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:733,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:735,29'
              BranchSideFuncs:
                - smtp_address_encode
      Callsites:
        - Src:             'smtp-address.c:735,9'
          Dst:             smtp_address_encode
    - functionName:    smtp_address_encode
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_write
        - str_c
        - t_str_new
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-address.c:718,18'
          Dst:             t_str_new
        - Src:             'smtp-address.c:719,2'
          Dst:             smtp_address_write
        - Src:             'smtp-address.c:720,9'
          Dst:             str_c
    - functionName:    smtp_address_detail_parse_temp
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - delimiters
        - address
        - username_r
        - delim_r
        - detail_r
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_datastack_create
        - smtp_address_detail_parse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-address.c:574,28'
          Dst:             pool_datastack_create
        - Src:             'smtp-address.c:574,2'
          Dst:             smtp_address_detail_parse
    - functionName:    smtp_address_detail_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - delimiters
        - address
        - username_r
        - delim_r
        - detail_r
      BBCount:         25
      ICount:          186
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - p_strconcat
        - p_strdup
        - p_strdup_until
        - smtp_address_encode
        - smtp_address_init
        - smtp_address_isnull
        - strchr
        - strcspn
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:531,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:531,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-address.c:533,14'
              BranchSideFuncs:
                - strcspn
                - strchr
                - smtp_address_init
                - smtp_address_encode
                - p_strdup
                - smtp_address_encode
                - p_strconcat
                - p_strdup_until
        - Branch String:   'smtp-address.c:540,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:540,33'
              BranchSideFuncs:
                - strchr
                - smtp_address_init
                - smtp_address_encode
                - p_strdup
                - smtp_address_encode
                - p_strconcat
                - p_strdup_until
            - BranchSide:      'smtp-address.c:540,4'
              BranchSideFuncs:
                - strchr
                - smtp_address_init
                - smtp_address_encode
                - p_strdup
                - smtp_address_encode
                - p_strconcat
                - p_strdup_until
        - Branch String:   'smtp-address.c:542,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:543,15'
              BranchSideFuncs:
                - p_strdup_until
                - strchr
                - smtp_address_init
                - smtp_address_encode
                - p_strdup
                - smtp_address_encode
                - p_strconcat
            - BranchSide:      'smtp-address.c:549,6'
              BranchSideFuncs:
                - strchr
                - smtp_address_init
                - smtp_address_encode
                - p_strdup
                - smtp_address_encode
                - p_strconcat
        - Branch String:   'smtp-address.c:549,30'
          Branch Sides:
            - BranchSide:      'smtp-address.c:549,34'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:550,17'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:549,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:550,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:551,18'
              BranchSideFuncs:
                - strchr
                - smtp_address_init
                - smtp_address_encode
                - p_strdup
                - smtp_address_encode
                - p_strconcat
        - Branch String:   'smtp-address.c:551,11'
          Branch Sides:
            - BranchSide:      'smtp-address.c:553,29'
              BranchSideFuncs:
                - p_strconcat
            - BranchSide:      'smtp-address.c:559,29'
              BranchSideFuncs:
                - smtp_address_init
                - smtp_address_encode
                - p_strdup
                - smtp_address_encode
        - Branch String:   'smtp-address.c:560,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:561,18'
              BranchSideFuncs:
                - smtp_address_encode
            - BranchSide:      'smtp-address.c:564,14'
              BranchSideFuncs:
                - smtp_address_encode
                - p_strdup
      Callsites:
        - Src:             'smtp-address.c:531,2'
          Dst:             smtp_address_isnull
        - Src:             'smtp-address.c:531,2'
          Dst:             i_panic
        - Src:             'smtp-address.c:539,8'
          Dst:             strcspn
        - Src:             'smtp-address.c:545,10'
          Dst:             p_strdup_until
        - Src:             'smtp-address.c:551,11'
          Dst:             strchr
        - Src:             'smtp-address.c:553,17'
          Dst:             p_strconcat
        - Src:             'smtp-address.c:559,3'
          Dst:             smtp_address_init
        - Src:             'smtp-address.c:561,18'
          Dst:             smtp_address_encode
        - Src:             'smtp-address.c:564,20'
          Dst:             smtp_address_encode
        - Src:             'smtp-address.c:564,5'
          Dst:             p_strdup
    - functionName:    strcspn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_address_parse_username
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - username
        - address_r
        - error_r
      BBCount:         34
      ICount:          184
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - pool_datastack_create
        - smtp_address_clone
        - smtp_parse_mailbox
        - smtp_parser_init
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-address.c:488,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:489,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
            - BranchSide:      'smtp-address.c:490,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
        - Branch String:   'smtp-address.c:490,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:491,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
            - BranchSide:      'smtp-address.c:493,7'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
        - Branch String:   'smtp-address.c:493,24'
          Branch Sides:
            - BranchSide:      'smtp-address.c:493,28'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:494,7'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:493,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:494,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:499,2'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
        - Branch String:   'smtp-address.c:494,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:495,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:496,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:504,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:505,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:511,14'
              BranchSideFuncs:
                - smtp_address_clone
        - Branch String:   'smtp-address.c:505,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:506,16'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:509,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:506,16'
          Branch Sides:
            - BranchSide:      'smtp-address.c:506,34'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:506,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:511,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:512,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:517,6'
              BranchSideFuncs:
                - smtp_address_clone
        - Branch String:   'smtp-address.c:512,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:513,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:514,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:517,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:518,35'
              BranchSideFuncs:
                - smtp_address_clone
            - BranchSide:      'smtp-address.c:519,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:500,36'
          Dst:             pool_datastack_create
        - Src:             'smtp-address.c:500,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-address.c:504,13'
          Dst:             smtp_parse_mailbox
        - Src:             'smtp-address.c:518,16'
          Dst:             smtp_address_clone
    - functionName:    smtp_parse_mailbox
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - aparser
        - flags
      BBCount:         80
      ICount:          455
      EdgeCount:       108
      CyclomaticComplexity: 30
      functionsReached:
        - p_strdup_until
        - smtp_address_parser_find_end
        - smtp_char_is_qpair
        - smtp_char_is_qtext
        - smtp_parse_localpart
        - smtp_parser_parse_address_literal
        - smtp_parser_parse_domain
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-address.c:132,11'
          Branch Sides:
            - BranchSide:      'smtp-address.c:132,29'
              BranchSideFuncs:
                - smtp_address_parser_find_end
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
                - smtp_parse_localpart
            - BranchSide:      'smtp-address.c:132,8'
              BranchSideFuncs:
                - smtp_address_parser_find_end
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
                - smtp_parse_localpart
        - Branch String:   'smtp-address.c:133,52'
          Branch Sides:
            - BranchSide:      'smtp-address.c:134,7'
              BranchSideFuncs:
                - smtp_parse_localpart
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:136,35'
              BranchSideFuncs:
                - smtp_parse_localpart
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:134,65'
          Branch Sides:
            - BranchSide:      'smtp-address.c:135,6'
              BranchSideFuncs:
                - smtp_parse_localpart
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:136,35'
              BranchSideFuncs:
                - smtp_parse_localpart
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:135,20'
          Branch Sides:
            - BranchSide:      'smtp-address.c:135,24'
              BranchSideFuncs:
                - smtp_parse_localpart
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:136,35'
              BranchSideFuncs:
                - smtp_parse_localpart
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:133,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:136,35'
              BranchSideFuncs:
                - smtp_parse_localpart
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:140,36'
              BranchSideFuncs:
                - smtp_address_parser_find_end
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:136,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:137,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:138,2'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:140,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:141,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:143,8'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:144,27'
          Branch Sides:
            - BranchSide:      'smtp-address.c:144,31'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
            - BranchSide:      'smtp-address.c:144,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:144,3'
          Branch Sides:
            - BranchSide:      'smtp-address.c:145,6'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
            - BranchSide:      'smtp-address.c:146,7'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:146,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:147,9'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
            - BranchSide:      'smtp-address.c:150,12'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:150,3'
          Branch Sides:
            - BranchSide:      'smtp-address.c:151,29'
              BranchSideFuncs:
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
            - BranchSide:      'smtp-address.c:158,7'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
        - Branch String:   'smtp-address.c:151,32'
          Branch Sides:
            - BranchSide:      'smtp-address.c:152,29'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
            - BranchSide:      'smtp-address.c:157,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:151,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:153,5'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
            - BranchSide:      'smtp-address.c:157,3'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
                - p_strdup_until
                - smtp_char_is_qtext.1085
                - smtp_char_is_qpair.1065
        - Branch String:   'smtp-address.c:158,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:160,20'
              BranchSideFuncs:
                - p_strdup_until
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:162,17'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:165,34'
          Branch Sides:
            - BranchSide:      'smtp-address.c:165,38'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:166,7'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:165,58'
          Branch Sides:
            - BranchSide:      'smtp-address.c:166,7'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:175,6'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:165,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:167,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:175,6'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:167,34'
          Branch Sides:
            - BranchSide:      'smtp-address.c:168,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:169,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:168,22'
          Branch Sides:
            - BranchSide:      'smtp-address.c:168,26'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:171,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:167,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:169,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:171,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:175,33'
          Branch Sides:
            - BranchSide:      'smtp-address.c:175,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:176,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:175,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:176,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:177,2'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:179,11'
          Branch Sides:
            - BranchSide:      'smtp-address.c:179,29'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:179,8'
              BranchSideFuncs:
                - smtp_parser_parse_domain
                - smtp_parser_parse_address_literal
        - Branch String:   'smtp-address.c:180,59'
          Branch Sides:
            - BranchSide:      'smtp-address.c:182,3'
              BranchSideFuncs:
                - smtp_parser_parse_address_literal
            - BranchSide:      'smtp-address.c:192,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:180,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:183,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:192,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:183,34'
          Branch Sides:
            - BranchSide:      'smtp-address.c:184,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:185,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:184,22'
          Branch Sides:
            - BranchSide:      'smtp-address.c:184,26'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:188,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:183,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:185,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:188,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:136,14'
          Dst:             smtp_parse_localpart
        - Src:             'smtp-address.c:140,7'
          Dst:             smtp_address_parser_find_end
        - Src:             'smtp-address.c:151,9'
          Dst:             smtp_char_is_qtext
        - Src:             'smtp-address.c:152,9'
          Dst:             smtp_char_is_qpair
        - Src:             'smtp-address.c:160,5'
          Dst:             p_strdup_until
        - Src:             'smtp-address.c:180,13'
          Dst:             smtp_parser_parse_domain
        - Src:             'smtp-address.c:181,13'
          Dst:             smtp_parser_parse_address_literal
    - functionName:    smtp_address_parse_path
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 472
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - path
        - flags
        - address_r
        - error_r
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_parse_path_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-address.c:473,9'
          Dst:             smtp_address_parse_path_full
    - functionName:    smtp_address_parse_path_full
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - path
        - flags
        - address_r
        - error_r
        - endp_r
      BBCount:         83
      ICount:          414
      EdgeCount:       111
      CyclomaticComplexity: 30
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_datastack_create
        - smtp_address_clone
        - smtp_address_parse_path_broken
        - smtp_parse_path
        - smtp_parser_init
        - t_strdup_until
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-address.c:392,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:393,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:394,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:394,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:395,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:396,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:396,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:397,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:399,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:399,19'
          Branch Sides:
            - BranchSide:      'smtp-address.c:399,23'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:400,8'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:399,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:400,8'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:413,2'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:400,58'
          Branch Sides:
            - BranchSide:      'smtp-address.c:401,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:402,8'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:400,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:402,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:406,7'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:402,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:403,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:404,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:406,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:407,17'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:408,7'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:408,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:409,14'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:410,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:415,25'
          Branch Sides:
            - BranchSide:      'smtp-address.c:415,10'
              BranchSideFuncs:
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:415,57'
              BranchSideFuncs:
                - smtp_parse_path
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:418,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:419,7'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:424,13'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:419,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:420,16'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:423,7'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:420,16'
          Branch Sides:
            - BranchSide:      'smtp-address.c:420,34'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:420,5'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:424,13'
          Branch Sides:
            - BranchSide:      'smtp-address.c:425,15'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:435,21'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:425,48'
          Branch Sides:
            - BranchSide:      'smtp-address.c:426,16'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:428,36'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:426,34'
          Branch Sides:
            - BranchSide:      'smtp-address.c:427,7'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:428,36'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:425,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:428,36'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:431,8'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:431,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:432,6'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:433,8'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:435,13'
          Branch Sides:
            - BranchSide:      'smtp-address.c:436,7'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:438,7'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:438,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:439,5'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
            - BranchSide:      'smtp-address.c:440,7'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
                - smtp_address_parse_path_broken
        - Branch String:   'smtp-address.c:443,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:445,48'
              BranchSideFuncs:
                - smtp_address_parse_path_broken
                - smtp_address_clone
            - BranchSide:      'smtp-address.c:451,13'
              BranchSideFuncs:
                - smtp_address_clone
                - t_strdup_until
                - t_strdup_until
        - Branch String:   'smtp-address.c:445,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:448,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:451,2'
              BranchSideFuncs:
                - smtp_address_clone
        - Branch String:   'smtp-address.c:453,20'
          Branch Sides:
            - BranchSide:      'smtp-address.c:454,32'
              BranchSideFuncs:
                - t_strdup_until
                - smtp_address_clone
                - t_strdup_until
            - BranchSide:      'smtp-address.c:459,5'
              BranchSideFuncs:
                - t_strdup_until
                - smtp_address_clone
        - Branch String:   'smtp-address.c:453,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:456,5'
              BranchSideFuncs:
                - t_strdup_until
                - smtp_address_clone
            - BranchSide:      'smtp-address.c:459,5'
              BranchSideFuncs:
                - t_strdup_until
                - smtp_address_clone
        - Branch String:   'smtp-address.c:463,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:464,35'
              BranchSideFuncs:
                - smtp_address_clone
            - BranchSide:      'smtp-address.c:465,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:407,17'
          Dst:             malloc_multiply_check
        - Src:             'smtp-address.c:407,17'
          Dst:             p_malloc
        - Src:             'smtp-address.c:414,36'
          Dst:             pool_datastack_create
        - Src:             'smtp-address.c:414,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-address.c:418,13'
          Dst:             smtp_parse_path
        - Src:             'smtp-address.c:445,7'
          Dst:             smtp_address_parse_path_broken
        - Src:             'smtp-address.c:455,26'
          Dst:             t_strdup_until
        - Src:             'smtp-address.c:458,26'
          Dst:             t_strdup_until
        - Src:             'smtp-address.c:464,16'
          Dst:             smtp_address_clone
    - functionName:    smtp_parse_path
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - aparser
        - flags
      BBCount:         45
      ICount:          267
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - smtp_parse_mailbox
        - smtp_parse_source_route
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:248,32'
          Branch Sides:
            - BranchSide:      'smtp-address.c:248,36'
              BranchSideFuncs:
                - smtp_parse_mailbox
                - smtp_parse_source_route
            - BranchSide:      'smtp-address.c:251,14'
              BranchSideFuncs:
                - smtp_parse_mailbox
                - smtp_parse_source_route
        - Branch String:   'smtp-address.c:248,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:249,3'
              BranchSideFuncs:
                - smtp_parse_mailbox
                - smtp_parse_source_route
            - BranchSide:      'smtp-address.c:251,14'
              BranchSideFuncs:
                - smtp_parse_mailbox
                - smtp_parse_source_route
        - Branch String:   'smtp-address.c:251,13'
          Branch Sides:
            - BranchSide:      'smtp-address.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:252,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:256,20'
          Branch Sides:
            - BranchSide:      'smtp-address.c:256,55'
              BranchSideFuncs:
                - smtp_parse_source_route
                - smtp_parse_mailbox
            - BranchSide:      'smtp-address.c:260,32'
              BranchSideFuncs:
                - smtp_parse_mailbox
        - Branch String:   'smtp-address.c:256,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:257,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:260,32'
              BranchSideFuncs:
                - smtp_parse_mailbox
        - Branch String:   'smtp-address.c:260,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:261,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:262,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:262,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:263,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:281,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:263,33'
          Branch Sides:
            - BranchSide:      'smtp-address.c:263,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:275,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:263,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:264,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:275,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:264,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:265,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:269,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:269,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:271,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:274,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:281,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:282,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:287,13'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:282,34'
          Branch Sides:
            - BranchSide:      'smtp-address.c:282,38'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:283,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:282,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:283,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:286,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:256,31'
          Dst:             smtp_parse_source_route
        - Src:             'smtp-address.c:260,13'
          Dst:             smtp_parse_mailbox
    - functionName:    smtp_address_parse_path_broken
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - aparser
        - flags
        - endp_r
      BBCount:         31
      ICount:          188
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - smtp_address_parse_any
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:358,30'
          Branch Sides:
            - BranchSide:      'smtp-address.c:359,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:360,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:358,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:360,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:361,7'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
        - Branch String:   'smtp-address.c:361,20'
          Branch Sides:
            - BranchSide:      'smtp-address.c:362,6'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
            - BranchSide:      'smtp-address.c:366,2'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
        - Branch String:   'smtp-address.c:361,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:364,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:366,2'
              BranchSideFuncs:
                - smtp_address_parse_any
                - i_panic
        - Branch String:   'smtp-address.c:366,2'
          Branch Sides:
            - BranchSide:      'smtp-address.c:366,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-address.c:367,6'
              BranchSideFuncs:
                - smtp_address_parse_any
        - Branch String:   'smtp-address.c:367,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:368,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:373,6'
              BranchSideFuncs:
                - smtp_address_parse_any
        - Branch String:   'smtp-address.c:368,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:369,28'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:370,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:373,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:374,16'
              BranchSideFuncs:
                - smtp_address_parse_any
            - BranchSide:      'smtp-address.c:375,29'
              BranchSideFuncs:
                - smtp_address_parse_any
        - Branch String:   'smtp-address.c:375,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:377,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:379,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:379,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:380,13'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:381,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:366,2'
          Dst:             i_panic
        - Src:             'smtp-address.c:375,6'
          Dst:             smtp_address_parse_any
    - functionName:    smtp_address_parse_mailbox
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mailbox
        - flags
        - address_r
        - error_r
      BBCount:         42
      ICount:          221
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_datastack_create
        - smtp_address_clone
        - smtp_parse_mailbox
        - smtp_parser_init
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-address.c:302,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:303,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:304,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:304,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:305,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:307,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:307,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:308,4'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:310,7'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:310,23'
          Branch Sides:
            - BranchSide:      'smtp-address.c:310,27'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:311,8'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:310,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:311,8'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:322,2'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parse_mailbox
                - smtp_address_clone
        - Branch String:   'smtp-address.c:311,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:312,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:317,7'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
        - Branch String:   'smtp-address.c:312,8'
          Branch Sides:
            - BranchSide:      'smtp-address.c:313,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:314,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:317,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:318,17'
              BranchSideFuncs:
                - malloc_multiply_check.1061
                - p_malloc.1063
            - BranchSide:      'smtp-address.c:319,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:327,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:328,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:334,14'
              BranchSideFuncs:
                - smtp_address_clone
        - Branch String:   'smtp-address.c:328,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:329,16'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:332,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:329,16'
          Branch Sides:
            - BranchSide:      'smtp-address.c:329,34'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:329,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:334,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:335,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:340,6'
              BranchSideFuncs:
                - smtp_address_clone
        - Branch String:   'smtp-address.c:335,7'
          Branch Sides:
            - BranchSide:      'smtp-address.c:336,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-address.c:337,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-address.c:340,6'
          Branch Sides:
            - BranchSide:      'smtp-address.c:341,35'
              BranchSideFuncs:
                - smtp_address_clone
            - BranchSide:      'smtp-address.c:342,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-address.c:318,17'
          Dst:             malloc_multiply_check
        - Src:             'smtp-address.c:318,17'
          Dst:             p_malloc
        - Src:             'smtp-address.c:323,36'
          Dst:             pool_datastack_create
        - Src:             'smtp-address.c:323,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-address.c:327,13'
          Dst:             smtp_parse_mailbox
        - Src:             'smtp-address.c:341,16'
          Dst:             smtp_address_clone
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_proxy_data_merge_extra_fields
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - dst
        - src
      BBCount:         10
      ICount:          108
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - p_strdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-common.c:57,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:58,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-common.c:60,13'
              BranchSideFuncs:
                - malloc_multiply_check.1123
                - p_malloc.1125
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:63,2'
          Branch Sides:
            - BranchSide:      'smtp-common.c:64,31'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:68,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-common.c:61,13'
          Dst:             malloc_multiply_check
        - Src:             'smtp-common.c:61,13'
          Dst:             p_malloc
        - Src:             'smtp-common.c:64,22'
          Dst:             p_strdup
        - Src:             'smtp-common.c:65,23'
          Dst:             p_strdup
    - functionName:    smtp_proxy_data_merge
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-common.c'
      linkageType:     externalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - dst
        - src
      BBCount:         43
      ICount:          288
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - p_strdup
        - p_strdup_empty
        - smtp_proxy_data_merge_extra_fields
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-common.c:75,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:76,16'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:77,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:77,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:78,3'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:82,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:79,7'
          Branch Sides:
            - BranchSide:      'smtp-common.c:80,23'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:81,2'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:82,24'
          Branch Sides:
            - BranchSide:      'smtp-common.c:82,28'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:84,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:82,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:83,24'
              BranchSideFuncs:
                - p_strdup
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:84,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:84,25'
          Branch Sides:
            - BranchSide:      'smtp-common.c:84,29'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:86,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:84,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:85,25'
              BranchSideFuncs:
                - p_strdup
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:86,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-common.c:86,27'
          Branch Sides:
            - BranchSide:      'smtp-common.c:86,31'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-common.c:88,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
        - Branch String:   'smtp-common.c:86,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:87,27'
              BranchSideFuncs:
                - p_strdup
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
            - BranchSide:      'smtp-common.c:88,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
        - Branch String:   'smtp-common.c:88,36'
          Branch Sides:
            - BranchSide:      'smtp-common.c:88,40'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
                - p_strdup
            - BranchSide:      'smtp-common.c:90,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
        - Branch String:   'smtp-common.c:88,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:89,36'
              BranchSideFuncs:
                - p_strdup
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
            - BranchSide:      'smtp-common.c:90,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
        - Branch String:   'smtp-common.c:90,30'
          Branch Sides:
            - BranchSide:      'smtp-common.c:90,34'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
                - p_strdup_empty
            - BranchSide:      'smtp-common.c:92,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
        - Branch String:   'smtp-common.c:90,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:91,36'
              BranchSideFuncs:
                - p_strdup_empty
                - smtp_proxy_data_merge_extra_fields
            - BranchSide:      'smtp-common.c:92,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
        - Branch String:   'smtp-common.c:92,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:93,21'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
            - BranchSide:      'smtp-common.c:94,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
        - Branch String:   'smtp-common.c:94,6'
          Branch Sides:
            - BranchSide:      'smtp-common.c:94,6'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
            - BranchSide:      'smtp-common.c:95,23'
              BranchSideFuncs:
                - smtp_proxy_data_merge_extra_fields
      Callsites:
        - Src:             'smtp-common.c:83,15'
          Dst:             p_strdup
        - Src:             'smtp-common.c:85,16'
          Dst:             p_strdup
        - Src:             'smtp-common.c:87,18'
          Dst:             p_strdup
        - Src:             'smtp-common.c:89,27'
          Dst:             p_strdup
        - Src:             'smtp-common.c:91,21'
          Dst:             p_strdup_empty
        - Src:             'smtp-common.c:97,2'
          Dst:             smtp_proxy_data_merge_extra_fields
    - functionName:    smtp_capability_find_by_name
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-common.c'
      linkageType:     externalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cap_name
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-common.c:35,2'
          Branch Sides:
            - BranchSide:      'smtp-common.c:36,32'
              BranchSideFuncs:
                - strcasecmp
            - BranchSide:      'smtp-common.c:42,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-common.c:38,7'
          Branch Sides:
            - BranchSide:      'smtp-common.c:39,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-common.c:40,2'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'smtp-common.c:38,7'
          Dst:             strcasecmp
    - functionName:    smtp_xtext_encode_cstr
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-syntax.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - data
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_xtext_encode
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './smtp-syntax.h:27,54'
          Dst:             strlen
        - Src:             './smtp-syntax.h:27,2'
          Dst:             smtp_xtext_encode
    - functionName:    smtp_params_rcpt_has_orcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-params.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_params_rcpt_parse_orcpt_rfc822
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 993
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - prparser
        - addr_str
        - pool
        - addr_r
      BBCount:         21
      ICount:          122
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - message_address_parse
        - pool_datastack_create
        - smtp_address_create_from_msg
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:979,26'
          Branch Sides:
            - BranchSide:      'smtp-params.c:979,29'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:980,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:979,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:980,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:981,6'
              BranchSideFuncs:
                - smtp_address_create_from_msg
        - Branch String:   'smtp-params.c:981,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:982,7'
              BranchSideFuncs:
                - smtp_address_create_from_msg
            - BranchSide:      'smtp-params.c:989,35'
              BranchSideFuncs:
                - smtp_address_create_from_msg
        - Branch String:   'smtp-params.c:983,49'
          Branch Sides:
            - BranchSide:      'smtp-params.c:984,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:986,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:984,36'
          Branch Sides:
            - BranchSide:      'smtp-params.c:985,8'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:986,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:982,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:986,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:987,3'
              BranchSideFuncs:
                - smtp_address_create_from_msg
        - Branch String:   'smtp-params.c:989,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:990,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:991,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:976,38'
          Dst:             pool_datastack_create
        - Src:             'smtp-params.c:978,10'
          Dst:             strlen
        - Src:             'smtp-params.c:976,16'
          Dst:             message_address_parse
        - Src:             'smtp-params.c:989,6'
          Dst:             smtp_address_create_from_msg
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_char_is_textstr
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_char_is_esmtp_value
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_params_rcpt_add_orcpt_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1379
      functionLinenumberEnd: 1394
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         12
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - event_add_str
        - i_panic
        - smtp_address_encode
        - strcasecmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1381,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1382,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1384,16'
              BranchSideFuncs:
                - event_add_str
                - strcasecmp
                - event_add_str
                - i_panic
                - smtp_address_encode
                - event_add_str
        - Branch String:   'smtp-params.c:1386,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1387,17'
              BranchSideFuncs:
                - smtp_address_encode
                - event_add_str
            - BranchSide:      'smtp-params.c:1390,3'
              BranchSideFuncs:
                - event_add_str
                - i_panic
        - Branch String:   'smtp-params.c:1390,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1390,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-params.c:1391,17'
              BranchSideFuncs:
                - event_add_str
      Callsites:
        - Src:             'smtp-params.c:1384,2'
          Dst:             event_add_str
        - Src:             'smtp-params.c:1386,6'
          Dst:             strcasecmp
        - Src:             'smtp-params.c:1388,10'
          Dst:             smtp_address_encode
        - Src:             'smtp-params.c:1387,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:1390,3'
          Dst:             i_panic
        - Src:             'smtp-params.c:1391,3'
          Dst:             event_add_str
    - functionName:    smtp_params_rcpt_add_notify_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1350
      functionLinenumberEnd: 1374
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         27
      ICount:          143
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - event_add_str
        - i_panic
        - str_append
        - str_append_c
        - str_c
        - str_len
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1352,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1353,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1354,7'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - event_add_str
                - i_panic
        - Branch String:   'smtp-params.c:1354,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1355,3'
              BranchSideFuncs:
                - event_add_str
                - i_panic
            - BranchSide:      'smtp-params.c:1359,19'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
        - Branch String:   'smtp-params.c:1355,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1355,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-params.c:1357,17'
              BranchSideFuncs:
                - event_add_str
        - Branch String:   'smtp-params.c:1360,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1361,15'
              BranchSideFuncs:
                - str_append.1307
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1362,8'
              BranchSideFuncs:
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
        - Branch String:   'smtp-params.c:1362,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1363,16'
              BranchSideFuncs:
                - str_len.1308
                - str_append.1307
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1367,8'
              BranchSideFuncs:
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
        - Branch String:   'smtp-params.c:1363,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1364,5'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1365,15'
              BranchSideFuncs:
                - str_append.1307
                - str_c
                - event_add_str
                - str_len.1308
                - str_append.1307
                - str_append_c.1309
        - Branch String:   'smtp-params.c:1367,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1368,16'
              BranchSideFuncs:
                - str_len.1308
                - str_append.1307
                - str_c
                - event_add_str
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1372,17'
              BranchSideFuncs:
                - str_c
                - event_add_str
        - Branch String:   'smtp-params.c:1368,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1369,5'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
                - str_c
                - event_add_str
            - BranchSide:      'smtp-params.c:1370,15'
              BranchSideFuncs:
                - str_append.1307
                - str_c
                - event_add_str
      Callsites:
        - Src:             'smtp-params.c:1355,3'
          Dst:             i_panic
        - Src:             'smtp-params.c:1357,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:1359,19'
          Dst:             t_str_new
        - Src:             'smtp-params.c:1361,4'
          Dst:             str_append
        - Src:             'smtp-params.c:1363,8'
          Dst:             str_len
        - Src:             'smtp-params.c:1364,5'
          Dst:             str_append_c
        - Src:             'smtp-params.c:1365,4'
          Dst:             str_append
        - Src:             'smtp-params.c:1368,8'
          Dst:             str_len
        - Src:             'smtp-params.c:1369,5'
          Dst:             str_append_c
        - Src:             'smtp-params.c:1370,4'
          Dst:             str_append
        - Src:             'smtp-params.c:1372,45'
          Dst:             str_c
        - Src:             'smtp-params.c:1372,3'
          Dst:             event_add_str
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    smtp_params_rcpt_add_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1398
      functionLinenumberEnd: 1401
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_rcpt_add_notify_to_event
        - smtp_params_rcpt_add_orcpt_to_event
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:1399,2'
          Dst:             smtp_params_rcpt_add_notify_to_event
        - Src:             'smtp-params.c:1400,2'
          Dst:             smtp_params_rcpt_add_orcpt_to_event
    - functionName:    smtp_address_equals
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-address.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - address1
        - address2
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_address_cmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './smtp-address.h:191,10'
          Dst:             smtp_address_cmp
    - functionName:    smtp_params_rcpt_equal
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1318
      functionLinenumberEnd: 1343
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params1
        - params2
      BBCount:         20
      ICount:          124
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - null_strcasecmp
        - null_strcmp
        - smtp_address_equals
        - smtp_params_equal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1319,22'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1319,25'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1320,11'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1319,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1320,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1323,6'
              BranchSideFuncs:
                - null_strcasecmp
                - null_strcasecmp
                - null_strcmp
                - smtp_params_equal
                - smtp_address_equals.1314
        - Branch String:   'smtp-params.c:1323,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1324,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1327,22'
              BranchSideFuncs:
                - null_strcasecmp
                - null_strcasecmp
                - null_strcmp
                - smtp_params_equal
                - smtp_address_equals.1314
        - Branch String:   'smtp-params.c:1327,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1329,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1330,22'
              BranchSideFuncs:
                - null_strcasecmp
                - null_strcmp
                - smtp_params_equal
                - smtp_address_equals.1314
        - Branch String:   'smtp-params.c:1330,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1331,28'
              BranchSideFuncs:
                - smtp_address_equals.1314
                - smtp_params_equal
            - BranchSide:      'smtp-params.c:1335,19'
              BranchSideFuncs:
                - null_strcmp
                - smtp_params_equal
        - Branch String:   'smtp-params.c:1331,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1333,4'
              BranchSideFuncs:
                - smtp_params_equal
            - BranchSide:      'smtp-params.c:1334,2'
              BranchSideFuncs:
                - smtp_params_equal
        - Branch String:   'smtp-params.c:1335,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1337,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:1327,6'
          Dst:             null_strcasecmp
        - Src:             'smtp-params.c:1330,6'
          Dst:             null_strcasecmp
        - Src:             'smtp-params.c:1331,8'
          Dst:             smtp_address_equals
        - Src:             'smtp-params.c:1335,7'
          Dst:             null_strcmp
        - Src:             'smtp-params.c:1341,9'
          Dst:             smtp_params_equal
    - functionName:    smtp_params_equal
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params1
        - params2
      BBCount:         27
      ICount:          148
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - array_count_i
        - array_is_created_i
        - null_strcmp
        - smtp_params_get_param
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:235,33'
          Branch Sides:
            - BranchSide:      'smtp-params.c:235,36'
              BranchSideFuncs:
                - array_count_i.1318
                - array_is_created_i.1317
                - array_count_i.1318
                - array_count_i.1318
                - array_count_i.1318
                - smtp_params_get_param
                - null_strcmp
                - array_is_created_i.1317
                - array_count_i.1318
            - BranchSide:      'smtp-params.c:236,12'
              BranchSideFuncs:
                - array_is_created_i.1317
                - array_count_i.1318
        - Branch String:   'smtp-params.c:235,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:236,12'
              BranchSideFuncs:
                - array_is_created_i.1317
                - array_count_i.1318
            - BranchSide:      'smtp-params.c:239,7'
              BranchSideFuncs:
                - array_is_created_i.1317
                - array_count_i.1318
                - array_count_i.1318
                - array_count_i.1318
                - smtp_params_get_param
                - null_strcmp
        - Branch String:   'smtp-params.c:236,38'
          Branch Sides:
            - BranchSide:      'smtp-params.c:236,3'
              BranchSideFuncs:
                - array_count_i.1318
            - BranchSide:      'smtp-params.c:237,4'
              BranchSideFuncs:
                - array_count_i.1318
        - Branch String:   'smtp-params.c:239,33'
          Branch Sides:
            - BranchSide:      'smtp-params.c:239,36'
              BranchSideFuncs:
                - array_count_i.1318
                - array_count_i.1318
                - array_count_i.1318
                - smtp_params_get_param
                - null_strcmp
            - BranchSide:      'smtp-params.c:240,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:239,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:240,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:242,6'
              BranchSideFuncs:
                - array_count_i.1318
                - array_count_i.1318
                - smtp_params_get_param
                - null_strcmp
        - Branch String:   'smtp-params.c:242,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:243,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:245,2'
              BranchSideFuncs:
                - smtp_params_get_param
                - null_strcmp
        - Branch String:   'smtp-params.c:245,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:246,34'
              BranchSideFuncs:
                - smtp_params_get_param
                - null_strcmp
            - BranchSide:      'smtp-params.c:252,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:247,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:248,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:249,19'
              BranchSideFuncs:
                - null_strcmp
                - smtp_params_get_param
        - Branch String:   'smtp-params.c:249,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:250,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:251,2'
              BranchSideFuncs:
                - smtp_params_get_param
                - null_strcmp
      Callsites:
        - Src:             'smtp-params.c:235,7'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:235,36'
          Dst:             array_count_i
        - Src:             'smtp-params.c:236,12'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:237,4'
          Dst:             array_count_i
        - Src:             'smtp-params.c:239,7'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:239,36'
          Dst:             array_count_i
        - Src:             'smtp-params.c:242,6'
          Dst:             array_count_i
        - Src:             'smtp-params.c:242,30'
          Dst:             array_count_i
        - Src:             'smtp-params.c:246,12'
          Dst:             smtp_params_get_param
        - Src:             'smtp-params.c:249,7'
          Dst:             null_strcmp
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_params_get_param
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_is_created_i
        - strcasecmp
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-params.c:204,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:205,3'
              BranchSideFuncs:
                - strcasecmp
            - BranchSide:      'smtp-params.c:207,2'
              BranchSideFuncs:
                - strcasecmp
        - Branch String:   'smtp-params.c:207,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:208,18'
              BranchSideFuncs:
                - strcasecmp
            - BranchSide:      'smtp-params.c:211,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:208,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:209,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:210,2'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'smtp-params.c:204,7'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:208,7'
          Dst:             strcasecmp
    - functionName:    smtp_params_rcpt_decode_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1311
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
        - value_r
        - allow_nul
        - error_r
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_decode_param
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:1312,9'
          Dst:             smtp_params_decode_param
    - functionName:    smtp_params_decode_param
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
        - value_r
        - allow_nul
        - error_r
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_params_get_param
        - smtp_xtext_decode
        - strlen
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-params.c:221,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:222,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:224,30'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - smtp_xtext_decode
        - Branch String:   'smtp-params.c:225,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:226,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:227,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:220,10'
          Dst:             smtp_params_get_param
        - Src:             'smtp-params.c:224,23'
          Dst:             strlen
        - Src:             'smtp-params.c:224,13'
          Dst:             t_str_new
        - Src:             'smtp-params.c:225,6'
          Dst:             smtp_xtext_decode
    - functionName:    smtp_params_rcpt_get_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1304
      functionLinenumberEnd: 1305
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_get_param
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:1305,9'
          Dst:             smtp_params_get_param
    - functionName:    smtp_params_rcpt_write_orcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1264
      functionLinenumberEnd: 1282
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - params
      BBCount:         18
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - smtp_address_encode
        - smtp_params_rcpt_has_orcpt
        - smtp_xtext_encode_cstr
        - str_append_c
        - str_printfa
        - strcasecmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1265,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1266,3'
              BranchSideFuncs:
                - str_printfa
                - strcasecmp
                - smtp_xtext_encode_cstr
                - str_append_c.1309
                - i_panic
                - smtp_address_encode
                - smtp_xtext_encode_cstr
            - BranchSide:      'smtp-params.c:1267,7'
              BranchSideFuncs:
                - str_printfa
                - strcasecmp
                - smtp_xtext_encode_cstr
                - str_append_c.1309
                - i_panic
                - smtp_address_encode
                - smtp_xtext_encode_cstr
        - Branch String:   'smtp-params.c:1267,40'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1268,7'
              BranchSideFuncs:
                - str_printfa
                - strcasecmp
                - smtp_xtext_encode_cstr
                - str_append_c.1309
                - i_panic
                - smtp_address_encode
                - smtp_xtext_encode_cstr
            - BranchSide:      'smtp-params.c:1273,14'
              BranchSideFuncs:
                - str_printfa
                - strcasecmp
                - smtp_xtext_encode_cstr
                - str_append_c.1309
                - i_panic
                - smtp_address_encode
                - smtp_xtext_encode_cstr
        - Branch String:   'smtp-params.c:1267,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1269,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1273,14'
              BranchSideFuncs:
                - str_printfa
                - strcasecmp
                - smtp_xtext_encode_cstr
                - str_append_c.1309
                - i_panic
                - smtp_address_encode
                - smtp_xtext_encode_cstr
        - Branch String:   'smtp-params.c:1274,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1276,4'
              BranchSideFuncs:
                - smtp_address_encode
                - smtp_xtext_encode_cstr
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1278,3'
              BranchSideFuncs:
                - smtp_xtext_encode_cstr
                - str_append_c.1309
                - i_panic
        - Branch String:   'smtp-params.c:1278,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1278,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-params.c:1279,26'
              BranchSideFuncs:
                - smtp_xtext_encode_cstr
                - str_append_c.1309
      Callsites:
        - Src:             'smtp-params.c:1265,7'
          Dst:             smtp_params_rcpt_has_orcpt
        - Src:             'smtp-params.c:1273,2'
          Dst:             str_printfa
        - Src:             'smtp-params.c:1274,6'
          Dst:             strcasecmp
        - Src:             'smtp-params.c:1276,12'
          Dst:             smtp_address_encode
        - Src:             'smtp-params.c:1275,3'
          Dst:             smtp_xtext_encode_cstr
        - Src:             'smtp-params.c:1278,3'
          Dst:             i_panic
        - Src:             'smtp-params.c:1279,3'
          Dst:             smtp_xtext_encode_cstr
        - Src:             'smtp-params.c:1281,2'
          Dst:             str_append_c
    - functionName:    smtp_params_rcpt_write_notify
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1224
      functionLinenumberEnd: 1259
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - params
      BBCount:         30
      ICount:          153
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - str_append
        - str_append_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1225,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1226,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1227,7'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append.1307
                - i_panic
        - Branch String:   'smtp-params.c:1227,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1228,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1236,13'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append.1307
                - i_panic
        - Branch String:   'smtp-params.c:1237,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1238,3'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
                - i_panic
            - BranchSide:      'smtp-params.c:1241,8'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
        - Branch String:   'smtp-params.c:1238,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1238,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-params.c:1239,14'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
        - Branch String:   'smtp-params.c:1242,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1243,15'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1246,8'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
        - Branch String:   'smtp-params.c:1246,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1247,8'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1252,8'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
        - Branch String:   'smtp-params.c:1247,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1248,5'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1249,15'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
        - Branch String:   'smtp-params.c:1253,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1254,5'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:1255,15'
              BranchSideFuncs:
                - str_append.1307
                - str_append_c.1309
      Callsites:
        - Src:             'smtp-params.c:1236,2'
          Dst:             str_append
        - Src:             'smtp-params.c:1238,3'
          Dst:             i_panic
        - Src:             'smtp-params.c:1239,3'
          Dst:             str_append
        - Src:             'smtp-params.c:1243,4'
          Dst:             str_append
        - Src:             'smtp-params.c:1248,5'
          Dst:             str_append_c
        - Src:             'smtp-params.c:1249,4'
          Dst:             str_append
        - Src:             'smtp-params.c:1254,5'
          Dst:             str_append_c
        - Src:             'smtp-params.c:1255,4'
          Dst:             str_append
        - Src:             'smtp-params.c:1258,2'
          Dst:             str_append_c
    - functionName:    smtp_params_rcpt_write
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1287
      functionLinenumberEnd: 1297
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - extra_params
        - params
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_params_rcpt_write_notify
        - smtp_params_rcpt_write_orcpt
        - smtp_params_write
        - str_len
        - str_truncate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-params.c:1295,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1295,6'
              BranchSideFuncs:
                - str_len.1308
                - str_truncate.1321
            - BranchSide:      'smtp-params.c:1296,16'
              BranchSideFuncs:
                - str_len.1308
                - str_truncate.1321
      Callsites:
        - Src:             'smtp-params.c:1288,20'
          Dst:             str_len
        - Src:             'smtp-params.c:1290,2'
          Dst:             smtp_params_rcpt_write_notify
        - Src:             'smtp-params.c:1291,2'
          Dst:             smtp_params_rcpt_write_orcpt
        - Src:             'smtp-params.c:1293,2'
          Dst:             smtp_params_write
        - Src:             'smtp-params.c:1295,6'
          Dst:             str_len
        - Src:             'smtp-params.c:1296,24'
          Dst:             str_len
        - Src:             'smtp-params.c:1296,3'
          Dst:             str_truncate
    - functionName:    smtp_params_write
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - param_keywords
        - params
      BBCount:         18
      ICount:          95
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - array_is_created_i
        - smtp_param_write
        - str_append_c
        - str_array_icase_find
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-params.c:184,29'
          Branch Sides:
            - BranchSide:      'smtp-params.c:184,33'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:185,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:184,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:185,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:186,7'
              BranchSideFuncs:
                - array_is_created_i.1317
                - str_array_icase_find
                - str_append_c.1309
                - smtp_param_write
        - Branch String:   'smtp-params.c:186,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:187,3'
              BranchSideFuncs:
                - str_array_icase_find
                - str_append_c.1309
                - smtp_param_write
            - BranchSide:      'smtp-params.c:189,2'
              BranchSideFuncs:
                - str_array_icase_find
                - str_append_c.1309
                - smtp_param_write
        - Branch String:   'smtp-params.c:189,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:189,2'
              BranchSideFuncs:
                - str_array_icase_find
                - str_append_c.1309
                - smtp_param_write
            - BranchSide:      'smtp-params.c:190,28'
              BranchSideFuncs:
                - str_array_icase_find
                - str_append_c.1309
                - smtp_param_write
        - Branch String:   'smtp-params.c:190,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:191,21'
              BranchSideFuncs:
                - smtp_param_write
                - str_append_c.1309
                - str_array_icase_find
            - BranchSide:      'smtp-params.c:192,3'
              BranchSideFuncs:
                - str_append_c.1309
                - str_array_icase_find
                - smtp_param_write
      Callsites:
        - Src:             'smtp-params.c:186,7'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:190,7'
          Dst:             str_array_icase_find
        - Src:             'smtp-params.c:191,4'
          Dst:             smtp_param_write
        - Src:             'smtp-params.c:192,3'
          Dst:             str_append_c
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    smtp_param_write
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - param
      BBCount:         10
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_param_value_valid
        - str_append
        - str_append_c
        - t_str_ucase
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:171,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:171,6'
              BranchSideFuncs:
                - smtp_param_value_valid
                - str_append_c.1309
                - str_append.1307
                - i_panic
            - BranchSide:      'smtp-params.c:172,3'
              BranchSideFuncs:
                - smtp_param_value_valid
                - str_append_c.1309
                - str_append.1307
                - i_panic
        - Branch String:   'smtp-params.c:172,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:172,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-params.c:173,3'
              BranchSideFuncs:
                - str_append_c.1309
                - str_append.1307
      Callsites:
        - Src:             'smtp-params.c:170,18'
          Dst:             t_str_ucase
        - Src:             'smtp-params.c:170,2'
          Dst:             str_append
        - Src:             'smtp-params.c:172,3'
          Dst:             smtp_param_value_valid
        - Src:             'smtp-params.c:172,3'
          Dst:             i_panic
        - Src:             'smtp-params.c:173,3'
          Dst:             str_append_c
        - Src:             'smtp-params.c:174,3'
          Dst:             str_append
    - functionName:    smtp_param_value_valid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - value
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_char_is_esmtp_value
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:163,20'
          Branch Sides:
            - BranchSide:      'smtp-params.c:163,49'
              BranchSideFuncs:
                - smtp_char_is_esmtp_value
            - BranchSide:      'smtp-params.c:163,2'
              BranchSideFuncs:
                - smtp_char_is_esmtp_value
        - Branch String:   'smtp-params.c:163,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:164,4'
              BranchSideFuncs:
                - smtp_char_is_esmtp_value
            - BranchSide:      'smtp-params.c:165,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:163,23'
          Dst:             smtp_char_is_esmtp_value
    - functionName:    smtp_params_rcpt_set_orcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - pool
        - rcpt
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup
        - smtp_address_clone
        - smtp_address_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:1215,23'
          Dst:             smtp_address_clone
        - Src:             'smtp-params.c:1216,42'
          Dst:             smtp_address_encode
        - Src:             'smtp-params.c:1216,27'
          Dst:             p_strdup
    - functionName:    smtp_params_rcpt_drop_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1207
      functionLinenumberEnd: 1208
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
        - value_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_drop_one
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:1208,9'
          Dst:             smtp_params_drop_one
    - functionName:    smtp_params_drop_one
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
        - value_r
      BBCount:         15
      ICount:          102
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_delete_i
        - array_is_created_i
        - strcasecmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-params.c:142,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:143,3'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i.1323
            - BranchSide:      'smtp-params.c:145,2'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i.1323
        - Branch String:   'smtp-params.c:145,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:146,18'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i.1323
            - BranchSide:      'smtp-params.c:154,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:146,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:147,8'
              BranchSideFuncs:
                - array_delete_i.1323
            - BranchSide:      'smtp-params.c:153,2'
              BranchSideFuncs:
                - strcasecmp
                - array_delete_i.1323
        - Branch String:   'smtp-params.c:147,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:148,16'
              BranchSideFuncs:
                - array_delete_i.1323
            - BranchSide:      'smtp-params.c:149,4'
              BranchSideFuncs:
                - array_delete_i.1323
      Callsites:
        - Src:             'smtp-params.c:142,7'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:146,7'
          Dst:             strcasecmp
        - Src:             'smtp-params.c:149,4'
          Dst:             array_delete_i
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:244,2'
          Dst:             buffer_delete
    - functionName:    smtp_params_rcpt_encode_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1203
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - params
        - pool
        - keyword
        - value
        - value_len
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_add_encoded
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:1201,2'
          Dst:             smtp_params_add_encoded
    - functionName:    smtp_params_add_encoded
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - params
        - pool
        - keyword
        - value
        - value_len
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_add_one
        - smtp_xtext_encode
        - str_c
        - t_str_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:131,24'
          Dst:             t_str_new
        - Src:             'smtp-params.c:133,2'
          Dst:             smtp_xtext_encode
        - Src:             'smtp-params.c:134,45'
          Dst:             str_c
        - Src:             'smtp-params.c:134,2'
          Dst:             smtp_params_add_one
    - functionName:    smtp_params_add_one
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - pool
        - keyword
        - value
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - p_strdup
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-params.c:118,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:118,6'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - array_append_i.1325
            - BranchSide:      'smtp-params.c:119,3'
              BranchSideFuncs:
                - array_create_i.1324
                - p_strdup
                - p_strdup
                - array_append_i.1325
      Callsites:
        - Src:             'smtp-params.c:118,7'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:119,3'
          Dst:             array_create_i
        - Src:             'smtp-params.c:122,18'
          Dst:             p_strdup
        - Src:             'smtp-params.c:123,16'
          Dst:             p_strdup
        - Src:             'smtp-params.c:124,2'
          Dst:             array_append_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1296
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1296
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    smtp_params_rcpt_copy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1188
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - dst
        - src
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - p_strdup
        - smtp_address_clone
        - smtp_params_copy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1179,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1180,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1182,16'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - smtp_address_clone
                - smtp_params_copy
      Callsites:
        - Src:             'smtp-params.c:1183,25'
          Dst:             p_strdup
        - Src:             'smtp-params.c:1184,24'
          Dst:             p_strdup
        - Src:             'smtp-params.c:1185,20'
          Dst:             smtp_address_clone
        - Src:             'smtp-params.c:1187,2'
          Dst:             smtp_params_copy
    - functionName:    smtp_params_copy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - dst
        - src
      BBCount:         10
      ICount:          83
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - array_count_i
        - array_create_i
        - array_is_created_i
        - p_strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-params.c:100,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:101,3'
              BranchSideFuncs:
                - array_count_i.1318
                - array_create_i.1324
                - p_strdup
                - p_strdup
                - array_append_i.1325
            - BranchSide:      'smtp-params.c:103,2'
              BranchSideFuncs:
                - array_count_i.1318
                - array_create_i.1324
                - p_strdup
                - p_strdup
                - array_append_i.1325
        - Branch String:   'smtp-params.c:104,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:104,2'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - array_append_i.1325
            - BranchSide:      'smtp-params.c:107,32'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - array_append_i.1325
      Callsites:
        - Src:             'smtp-params.c:100,7'
          Dst:             array_is_created_i
        - Src:             'smtp-params.c:103,2'
          Dst:             array_count_i
        - Src:             'smtp-params.c:103,2'
          Dst:             array_create_i
        - Src:             'smtp-params.c:107,23'
          Dst:             p_strdup
        - Src:             'smtp-params.c:108,21'
          Dst:             p_strdup
        - Src:             'smtp-params.c:109,3'
          Dst:             array_append_i
    - functionName:    smtp_params_rcpt_add_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1192
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - pool
        - keyword
        - value
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_add_one
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:1193,2'
          Dst:             smtp_params_add_one
    - functionName:    smtp_params_rcpt_parse_orcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 998
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - prparser
        - value
      BBCount:         39
      ICount:          291
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - p_strdup
        - pool_datastack_create
        - smtp_char_is_textstr
        - smtp_params_rcpt_parse_orcpt_rfc822
        - smtp_parser_init
        - smtp_parser_parse_atom
        - smtp_parser_parse_xtext
        - str_c
        - str_data
        - str_len
        - strcasecmp
        - t_str_new
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1016,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1017,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1022,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parser_parse_atom
                - p_strdup
                - t_str_new
                - smtp_parser_parse_xtext
                - str_data.1291
                - str_len.1308
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
                - smtp_char_is_textstr
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1022,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1023,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1029,28'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_parser_init
                - smtp_parser_parse_atom
                - p_strdup
                - t_str_new
                - smtp_parser_parse_xtext
                - str_data.1291
                - str_len.1308
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
                - smtp_char_is_textstr
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1030,55'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1031,13'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1032,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1031,31'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1031,42'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1032,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1030,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1032,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1036,37'
              BranchSideFuncs:
                - p_strdup
                - t_str_new
                - smtp_parser_parse_xtext
                - str_data.1291
                - str_len.1308
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
                - smtp_char_is_textstr
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1041,59'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1042,10'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1043,7'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1041,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1043,7'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1070,15'
              BranchSideFuncs:
                - str_data.1291
                - str_len.1308
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
                - smtp_char_is_textstr
        - Branch String:   'smtp-params.c:1043,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1046,12'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1049,21'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1049,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1050,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1055,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1072,18'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1072,43'
              BranchSideFuncs:
                - smtp_char_is_textstr
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
            - BranchSide:      'smtp-params.c:1072,2'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
                - smtp_char_is_textstr
        - Branch String:   'smtp-params.c:1072,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1073,4'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
                - smtp_char_is_textstr
            - BranchSide:      'smtp-params.c:1074,6'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
        - Branch String:   'smtp-params.c:1074,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1075,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1082,36'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - strcasecmp
                - smtp_params_rcpt_parse_orcpt_rfc822
        - Branch String:   'smtp-params.c:1084,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1086,4'
              BranchSideFuncs:
                - smtp_params_rcpt_parse_orcpt_rfc822
            - BranchSide:      'smtp-params.c:1095,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1085,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1088,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1094,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:1029,28'
          Dst:             pool_datastack_create
        - Src:             'smtp-params.c:1029,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-params.c:1030,6'
          Dst:             smtp_parser_parse_atom
        - Src:             'smtp-params.c:1036,28'
          Dst:             p_strdup
        - Src:             'smtp-params.c:1040,12'
          Dst:             t_str_new
        - Src:             'smtp-params.c:1041,11'
          Dst:             smtp_parser_parse_xtext
        - Src:             'smtp-params.c:1044,22'
          Dst:             t_strdup_printf
        - Src:             'smtp-params.c:1070,6'
          Dst:             str_data
        - Src:             'smtp-params.c:1071,13'
          Dst:             str_len
        - Src:             'smtp-params.c:1072,21'
          Dst:             smtp_char_is_textstr
        - Src:             'smtp-params.c:1082,52'
          Dst:             str_c
        - Src:             'smtp-params.c:1082,27'
          Dst:             p_strdup
        - Src:             'smtp-params.c:1084,6'
          Dst:             strcasecmp
        - Src:             'smtp-params.c:1085,7'
          Dst:             smtp_params_rcpt_parse_orcpt_rfc822
    - functionName:    smtp_params_rcpt_parse_notify
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 899
      functionLinenumberEnd: 966
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - prparser
        - value
      BBCount:         48
      ICount:          258
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - strcasecmp
        - t_strsplit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:913,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:914,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:919,6'
              BranchSideFuncs:
                - t_strsplit
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:919,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:920,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:925,8'
              BranchSideFuncs:
                - t_strsplit
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:928,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:929,9'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:957,7'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:929,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:931,20'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:954,7'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:931,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:932,9'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:936,27'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:932,9'
          Branch Sides:
            - BranchSide:      'smtp-params.c:933,12'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:934,5'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:936,15'
          Branch Sides:
            - BranchSide:      'smtp-params.c:937,10'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:941,27'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:937,9'
          Branch Sides:
            - BranchSide:      'smtp-params.c:938,12'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:939,5'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:941,15'
          Branch Sides:
            - BranchSide:      'smtp-params.c:942,10'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:946,27'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:942,9'
          Branch Sides:
            - BranchSide:      'smtp-params.c:943,12'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:944,5'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:946,15'
          Branch Sides:
            - BranchSide:      'smtp-params.c:947,10'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:951,17'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:947,9'
          Branch Sides:
            - BranchSide:      'smtp-params.c:948,12'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
            - BranchSide:      'smtp-params.c:949,5'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - strcasecmp
                - strcasecmp
        - Branch String:   'smtp-params.c:957,13'
          Branch Sides:
            - BranchSide:      'smtp-params.c:957,16'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:959,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:957,28'
          Branch Sides:
            - BranchSide:      'smtp-params.c:958,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:959,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:957,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:959,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:965,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:960,34'
          Branch Sides:
            - BranchSide:      'smtp-params.c:960,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:960,27'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:927,9'
          Dst:             t_strsplit
        - Src:             'smtp-params.c:931,8'
          Dst:             strcasecmp
        - Src:             'smtp-params.c:936,15'
          Dst:             strcasecmp
        - Src:             'smtp-params.c:941,15'
          Dst:             strcasecmp
        - Src:             'smtp-params.c:946,15'
          Dst:             strcasecmp
    - functionName:    smtp_params_rcpt_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 1105
      functionLinenumberEnd: 1170
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - args
        - flags
        - caps
        - extensions
        - params_r
        - error_code_r
        - error_r
      BBCount:         39
      ICount:          245
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - pool_datastack_create
        - smtp_param_parse
        - smtp_params_rcpt_add_extra
        - smtp_params_rcpt_parse_notify
        - smtp_params_rcpt_parse_orcpt
        - str_array_icase_find
        - strcmp
        - t_str_ucase
        - t_strdup_printf
        - t_strsplit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:1121,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1122,24'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1165,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1122,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1125,35'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1131,37'
              BranchSideFuncs:
                - t_str_ucase
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_strdup_printf
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
        - Branch String:   'smtp-params.c:1132,41'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1133,21'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - t_strdup_printf
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - smtp_params_rcpt_parse_notify
            - BranchSide:      'smtp-params.c:1139,16'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
                - strcmp
                - smtp_params_rcpt_parse_orcpt
        - Branch String:   'smtp-params.c:1132,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1135,23'
              BranchSideFuncs:
                - smtp_params_rcpt_parse_notify
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1139,16'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
                - strcmp
                - smtp_params_rcpt_parse_orcpt
        - Branch String:   'smtp-params.c:1134,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1136,9'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1139,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1139,49'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1140,9'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
                - smtp_params_rcpt_parse_orcpt
            - BranchSide:      'smtp-params.c:1141,20'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
                - smtp_params_rcpt_parse_orcpt
        - Branch String:   'smtp-params.c:1140,46'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1141,20'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
                - smtp_params_rcpt_parse_orcpt
            - BranchSide:      'smtp-params.c:1147,14'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1139,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1143,23'
              BranchSideFuncs:
                - smtp_params_rcpt_parse_orcpt
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - strcmp
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1147,14'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1142,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1144,9'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1147,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
        - Branch String:   'smtp-params.c:1147,33'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1148,28'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1159,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1147,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1151,31'
              BranchSideFuncs:
                - smtp_params_rcpt_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - str_array_icase_find
                - strcmp
                - smtp_params_rcpt_parse_orcpt
                - strcmp
                - smtp_params_rcpt_parse_notify
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:1159,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:1165,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:1166,23'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:1169,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:1120,9'
          Dst:             t_strsplit
        - Src:             'smtp-params.c:1122,24'
          Dst:             pool_datastack_create
        - Src:             'smtp-params.c:1122,7'
          Dst:             smtp_param_parse
        - Src:             'smtp-params.c:1124,15'
          Dst:             t_strdup_printf
        - Src:             'smtp-params.c:1131,19'
          Dst:             t_str_ucase
        - Src:             'smtp-params.c:1133,8'
          Dst:             strcmp
        - Src:             'smtp-params.c:1134,8'
          Dst:             smtp_params_rcpt_parse_notify
        - Src:             'smtp-params.c:1141,7'
          Dst:             strcmp
        - Src:             'smtp-params.c:1142,8'
          Dst:             smtp_params_rcpt_parse_orcpt
        - Src:             'smtp-params.c:1148,7'
          Dst:             str_array_icase_find
        - Src:             'smtp-params.c:1151,4'
          Dst:             smtp_params_rcpt_add_extra
    - functionName:    smtp_param_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - text
        - param_r
        - error_r
      BBCount:         17
      ICount:          91
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - smtp_param_do_parse
        - smtp_parser_init
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-params.c:77,19'
          Branch Sides:
            - BranchSide:      'smtp-params.c:77,23'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:78,7'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:77,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:78,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:83,28'
              BranchSideFuncs:
                - smtp_parser_init
                - smtp_param_do_parse
        - Branch String:   'smtp-params.c:78,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:79,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:80,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:85,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:86,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:90,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:86,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:87,22'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:88,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:83,2'
          Dst:             smtp_parser_init
        - Src:             'smtp-params.c:85,6'
          Dst:             smtp_param_do_parse
    - functionName:    smtp_param_do_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - param_r
      BBCount:         30
      ICount:          241
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - __ctype_b_loc
        - smtp_char_is_esmtp_value
        - t_strndup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:36,33'
          Branch Sides:
            - BranchSide:      'smtp-params.c:36,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:37,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:36,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:37,3'
              BranchSideFuncs:
                - t_strndup
                - t_strndup
                - smtp_char_is_esmtp_value
                - __ctype_b_loc
            - BranchSide:      'smtp-params.c:40,2'
              BranchSideFuncs:
                - t_strndup
                - t_strndup
                - smtp_char_is_esmtp_value
                - __ctype_b_loc
        - Branch String:   'smtp-params.c:42,35'
          Branch Sides:
            - BranchSide:      'smtp-params.c:42,2'
              BranchSideFuncs:
                - __ctype_b_loc
                - t_strndup
                - t_strndup
                - smtp_char_is_esmtp_value
            - BranchSide:      'smtp-params.c:43,10'
              BranchSideFuncs:
                - __ctype_b_loc
                - t_strndup
                - t_strndup
                - smtp_char_is_esmtp_value
        - Branch String:   'smtp-params.c:42,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:44,3'
              BranchSideFuncs:
                - t_strndup
                - t_strndup
                - smtp_char_is_esmtp_value
                - __ctype_b_loc
            - BranchSide:      'smtp-params.c:45,31'
              BranchSideFuncs:
                - t_strndup
                - t_strndup
                - smtp_char_is_esmtp_value
        - Branch String:   'smtp-params.c:47,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:48,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:51,7'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_esmtp_value
        - Branch String:   'smtp-params.c:51,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:52,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:55,2'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_esmtp_value
        - Branch String:   'smtp-params.c:58,35'
          Branch Sides:
            - BranchSide:      'smtp-params.c:58,2'
              BranchSideFuncs:
                - smtp_char_is_esmtp_value
                - t_strndup
            - BranchSide:      'smtp-params.c:59,35'
              BranchSideFuncs:
                - smtp_char_is_esmtp_value
                - t_strndup
        - Branch String:   'smtp-params.c:58,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:60,3'
              BranchSideFuncs:
                - t_strndup
                - smtp_char_is_esmtp_value
            - BranchSide:      'smtp-params.c:62,6'
              BranchSideFuncs:
                - t_strndup
        - Branch String:   'smtp-params.c:62,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:63,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:66,29'
              BranchSideFuncs:
                - t_strndup
      Callsites:
        - Src:             'smtp-params.c:36,37'
          Dst:             __ctype_b_loc
        - Src:             'smtp-params.c:43,10'
          Dst:             __ctype_b_loc
        - Src:             'smtp-params.c:45,21'
          Dst:             t_strndup
        - Src:             'smtp-params.c:59,9'
          Dst:             smtp_char_is_esmtp_value
        - Src:             'smtp-params.c:66,19'
          Dst:             t_strndup
    - functionName:    smtp_params_mail_add_size_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_add_int
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:864,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:865,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:867,16'
              BranchSideFuncs:
                - event_add_int
      Callsites:
        - Src:             'smtp-params.c:867,2'
          Dst:             event_add_int
    - functionName:    smtp_params_mail_add_ret_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 843
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         8
      ICount:          44
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - event_add_str
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:845,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:847,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:849,17'
              BranchSideFuncs:
                - event_add_str
            - BranchSide:      'smtp-params.c:852,17'
              BranchSideFuncs:
                - event_add_str
            - BranchSide:      'smtp-params.c:855,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'smtp-params.c:849,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:852,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:855,3'
          Dst:             i_unreached
    - functionName:    smtp_params_mail_add_envid_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_add_str
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:834,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:835,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:837,16'
              BranchSideFuncs:
                - event_add_str
      Callsites:
        - Src:             'smtp-params.c:837,2'
          Dst:             event_add_str
    - functionName:    smtp_params_mail_add_body_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 807
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         10
      ICount:          61
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached:
        - event_add_str
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:809,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:811,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:813,17'
              BranchSideFuncs:
                - event_add_str
            - BranchSide:      'smtp-params.c:816,17'
              BranchSideFuncs:
                - event_add_str
            - BranchSide:      'smtp-params.c:819,17'
              BranchSideFuncs:
                - event_add_str
            - BranchSide:      'smtp-params.c:822,17'
              BranchSideFuncs:
                - event_add_str
            - BranchSide:      'smtp-params.c:825,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'smtp-params.c:813,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:816,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:819,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:822,3'
          Dst:             event_add_str
        - Src:             'smtp-params.c:825,3'
          Dst:             i_unreached
    - functionName:    smtp_params_mail_add_auth_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 795
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_add_str
        - smtp_address_encode
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:797,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:798,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:800,16'
              BranchSideFuncs:
                - smtp_address_encode
                - event_add_str
      Callsites:
        - Src:             'smtp-params.c:801,9'
          Dst:             smtp_address_encode
        - Src:             'smtp-params.c:800,2'
          Dst:             event_add_str
    - functionName:    smtp_params_mail_add_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - event
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_mail_add_auth_to_event
        - smtp_params_mail_add_body_to_event
        - smtp_params_mail_add_envid_to_event
        - smtp_params_mail_add_ret_to_event
        - smtp_params_mail_add_size_to_event
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:873,2'
          Dst:             smtp_params_mail_add_auth_to_event
        - Src:             'smtp-params.c:874,2'
          Dst:             smtp_params_mail_add_body_to_event
        - Src:             'smtp-params.c:875,2'
          Dst:             smtp_params_mail_add_envid_to_event
        - Src:             'smtp-params.c:876,2'
          Dst:             smtp_params_mail_add_ret_to_event
        - Src:             'smtp-params.c:877,2'
          Dst:             smtp_params_mail_add_size_to_event
    - functionName:    smtp_params_mail_decode_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
        - value_r
        - allow_nul
        - error_r
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_decode_param
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:786,9'
          Dst:             smtp_params_decode_param
    - functionName:    smtp_params_mail_get_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_get_param
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:779,9'
          Dst:             smtp_params_get_param
    - functionName:    smtp_params_mail_write_size
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 739
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - params
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_printfa
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:732,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:733,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:734,7'
              BranchSideFuncs:
                - str_printfa
        - Branch String:   'smtp-params.c:734,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:735,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:738,14'
              BranchSideFuncs:
                - str_printfa
      Callsites:
        - Src:             'smtp-params.c:738,2'
          Dst:             str_printfa
    - functionName:    smtp_params_mail_write_ret
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - params
      BBCount:         10
      ICount:          56
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - i_unreached
        - str_append
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:709,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:710,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:712,10'
              BranchSideFuncs:
                - str_append.1307
                - str_append.1307
                - i_unreached
        - Branch String:   'smtp-params.c:712,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:714,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:716,14'
              BranchSideFuncs:
                - str_append.1307
            - BranchSide:      'smtp-params.c:719,14'
              BranchSideFuncs:
                - str_append.1307
            - BranchSide:      'smtp-params.c:722,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'smtp-params.c:716,3'
          Dst:             str_append
        - Src:             'smtp-params.c:719,3'
          Dst:             str_append
        - Src:             'smtp-params.c:722,3'
          Dst:             i_unreached
    - functionName:    smtp_params_mail_write_envid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - params
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_xtext_encode
        - str_append
        - str_append_c
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:695,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:696,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:697,7'
              BranchSideFuncs:
                - str_append.1307
                - strlen
                - smtp_xtext_encode
                - str_append_c.1309
        - Branch String:   'smtp-params.c:697,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:698,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:700,13'
              BranchSideFuncs:
                - str_append.1307
                - strlen
                - smtp_xtext_encode
                - str_append_c.1309
      Callsites:
        - Src:             'smtp-params.c:700,2'
          Dst:             str_append
        - Src:             'smtp-params.c:701,58'
          Dst:             strlen
        - Src:             'smtp-params.c:701,2'
          Dst:             smtp_xtext_encode
        - Src:             'smtp-params.c:702,2'
          Dst:             str_append_c
    - functionName:    smtp_params_mail_write_body
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - params
      BBCount:         21
      ICount:          118
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached:
        - i_panic
        - i_unreached
        - str_append
        - str_append_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:660,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:662,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:664,14'
              BranchSideFuncs:
                - str_append.1307
            - BranchSide:      'smtp-params.c:668,3'
              BranchSideFuncs:
                - str_append.1307
                - i_panic
            - BranchSide:      'smtp-params.c:673,3'
              BranchSideFuncs:
                - str_append.1307
                - i_panic
            - BranchSide:      'smtp-params.c:678,14'
              BranchSideFuncs:
                - str_append.1307
                - str_append.1307
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:683,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-params.c:668,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:668,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-params.c:669,14'
              BranchSideFuncs:
                - str_append.1307
        - Branch String:   'smtp-params.c:673,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:673,3'
              BranchSideFuncs:
                - str_append.1307
                - i_panic
            - BranchSide:      'smtp-params.c:673,3'
              BranchSideFuncs:
                - str_append.1307
                - i_panic
        - Branch String:   'smtp-params.c:673,3'
          Branch Sides:
            - BranchSide:      'smtp-params.c:673,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-params.c:675,14'
              BranchSideFuncs:
                - str_append.1307
      Callsites:
        - Src:             'smtp-params.c:664,3'
          Dst:             str_append
        - Src:             'smtp-params.c:668,3'
          Dst:             i_panic
        - Src:             'smtp-params.c:669,3'
          Dst:             str_append
        - Src:             'smtp-params.c:673,3'
          Dst:             i_panic
        - Src:             'smtp-params.c:675,3'
          Dst:             str_append
        - Src:             'smtp-params.c:678,3'
          Dst:             str_append
        - Src:             'smtp-params.c:679,3'
          Dst:             str_append
        - Src:             'smtp-params.c:680,3'
          Dst:             str_append_c
        - Src:             'smtp-params.c:683,3'
          Dst:             i_unreached
    - functionName:    smtp_params_mail_write_auth
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - params
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_address_write
        - smtp_xtext_encode
        - str_append
        - str_append_c
        - str_data
        - str_len
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:638,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:639,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:640,7'
              BranchSideFuncs:
                - t_str_new
                - smtp_address_write
                - str_append.1307
                - str_data.1291
                - str_len.1308
                - smtp_xtext_encode
                - str_append_c.1309
                - str_append.1307
        - Branch String:   'smtp-params.c:640,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:641,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:643,14'
              BranchSideFuncs:
                - t_str_new
                - smtp_address_write
                - str_append.1307
                - str_data.1291
                - str_len.1308
                - smtp_xtext_encode
                - str_append_c.1309
                - str_append.1307
        - Branch String:   'smtp-params.c:645,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:646,14'
              BranchSideFuncs:
                - str_append.1307
                - str_append.1307
                - str_data.1291
                - str_len.1308
                - smtp_xtext_encode
                - str_append_c.1309
            - BranchSide:      'smtp-params.c:648,22'
              BranchSideFuncs:
                - smtp_address_write
                - str_append.1307
                - str_data.1291
                - str_len.1308
                - smtp_xtext_encode
                - str_append_c.1309
      Callsites:
        - Src:             'smtp-params.c:643,14'
          Dst:             t_str_new
        - Src:             'smtp-params.c:646,3'
          Dst:             str_append
        - Src:             'smtp-params.c:648,3'
          Dst:             smtp_address_write
        - Src:             'smtp-params.c:649,2'
          Dst:             str_append
        - Src:             'smtp-params.c:650,28'
          Dst:             str_data
        - Src:             'smtp-params.c:650,49'
          Dst:             str_len
        - Src:             'smtp-params.c:650,2'
          Dst:             smtp_xtext_encode
        - Src:             'smtp-params.c:651,2'
          Dst:             str_append_c
    - functionName:    smtp_params_mail_write
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 755
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - caps
        - extra_params
        - params
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_params_mail_write_auth
        - smtp_params_mail_write_body
        - smtp_params_mail_write_envid
        - smtp_params_mail_write_ret
        - smtp_params_mail_write_size
        - smtp_params_write
        - str_len
        - str_truncate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-params.c:769,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:769,6'
              BranchSideFuncs:
                - str_len.1308
                - str_truncate.1321
            - BranchSide:      'smtp-params.c:770,16'
              BranchSideFuncs:
                - str_len.1308
                - str_truncate.1321
      Callsites:
        - Src:             'smtp-params.c:756,20'
          Dst:             str_len
        - Src:             'smtp-params.c:758,2'
          Dst:             smtp_params_mail_write_auth
        - Src:             'smtp-params.c:759,2'
          Dst:             smtp_params_mail_write_body
        - Src:             'smtp-params.c:760,2'
          Dst:             smtp_params_mail_write_envid
        - Src:             'smtp-params.c:761,2'
          Dst:             smtp_params_mail_write_ret
        - Src:             'smtp-params.c:762,2'
          Dst:             smtp_params_mail_write_size
        - Src:             'smtp-params.c:767,2'
          Dst:             smtp_params_write
        - Src:             'smtp-params.c:769,6'
          Dst:             str_len
        - Src:             'smtp-params.c:770,24'
          Dst:             str_len
        - Src:             'smtp-params.c:770,3'
          Dst:             str_truncate
    - functionName:    smtp_params_mail_drop_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 625
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - keyword
        - value_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_drop_one
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:626,9'
          Dst:             smtp_params_drop_one
    - functionName:    smtp_params_mail_encode_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - params
        - pool
        - keyword
        - value
        - value_len
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_add_encoded
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:619,2'
          Dst:             smtp_params_add_encoded
    - functionName:    smtp_params_mail_copy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - dst
        - src
      BBCount:         6
      ICount:          93
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - p_strdup
        - smtp_address_clone
        - smtp_params_copy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:594,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:595,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:597,33'
              BranchSideFuncs:
                - smtp_address_clone
                - p_strdup
                - p_strdup
                - smtp_params_copy
      Callsites:
        - Src:             'smtp-params.c:597,14'
          Dst:             smtp_address_clone
        - Src:             'smtp-params.c:599,18'
          Dst:             p_strdup
        - Src:             'smtp-params.c:600,15'
          Dst:             p_strdup
        - Src:             'smtp-params.c:605,2'
          Dst:             smtp_params_copy
    - functionName:    smtp_params_mail_add_extra
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - params
        - pool
        - keyword
        - value
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_params_add_one
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-params.c:611,2'
          Dst:             smtp_params_add_one
    - functionName:    smtp_params_mail_parse_size
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pmparser
        - value
      BBCount:         10
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_uoff
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:463,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:464,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:469,6'
              BranchSideFuncs:
                - str_to_uoff
        - Branch String:   'smtp-params.c:469,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:470,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:476,18'
              BranchSideFuncs:
                - str_to_uoff
        - Branch String:   'smtp-params.c:476,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:477,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:481,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:476,6'
          Dst:             str_to_uoff
    - functionName:    smtp_params_mail_parse_ret
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pmparser
        - value
      BBCount:         14
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - strcmp
        - t_str_ucase
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:427,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:428,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:433,6'
              BranchSideFuncs:
                - t_str_ucase
                - strcmp
                - strcmp
        - Branch String:   'smtp-params.c:433,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:434,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:439,22'
              BranchSideFuncs:
                - t_str_ucase
                - strcmp
                - strcmp
        - Branch String:   'smtp-params.c:441,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:442,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:444,20'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'smtp-params.c:444,13'
          Branch Sides:
            - BranchSide:      'smtp-params.c:445,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:447,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:439,10'
          Dst:             t_str_ucase
        - Src:             'smtp-params.c:441,6'
          Dst:             strcmp
        - Src:             'smtp-params.c:444,13'
          Dst:             strcmp
    - functionName:    smtp_params_mail_parse_envid
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pmparser
        - xtext
      BBCount:         18
      ICount:          141
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - p_strdup
        - smtp_char_is_textstr
        - smtp_xtext_parse
        - strlen
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:378,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:379,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:384,6'
              BranchSideFuncs:
                - smtp_xtext_parse
                - strlen
                - p_strdup
                - smtp_char_is_textstr
                - t_strdup_printf
        - Branch String:   'smtp-params.c:384,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:385,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:390,23'
              BranchSideFuncs:
                - smtp_xtext_parse
                - strlen
                - p_strdup
                - smtp_char_is_textstr
                - t_strdup_printf
        - Branch String:   'smtp-params.c:390,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:392,42'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:403,29'
              BranchSideFuncs:
                - strlen
                - p_strdup
                - smtp_char_is_textstr
        - Branch String:   'smtp-params.c:405,18'
          Branch Sides:
            - BranchSide:      'smtp-params.c:405,43'
              BranchSideFuncs:
                - smtp_char_is_textstr
                - p_strdup
            - BranchSide:      'smtp-params.c:405,2'
              BranchSideFuncs:
                - p_strdup
                - smtp_char_is_textstr
        - Branch String:   'smtp-params.c:405,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:406,4'
              BranchSideFuncs:
                - p_strdup
                - smtp_char_is_textstr
            - BranchSide:      'smtp-params.c:407,6'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'smtp-params.c:407,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:408,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:414,27'
              BranchSideFuncs:
                - p_strdup
      Callsites:
        - Src:             'smtp-params.c:390,6'
          Dst:             smtp_xtext_parse
        - Src:             'smtp-params.c:391,21'
          Dst:             t_strdup_printf
        - Src:             'smtp-params.c:404,13'
          Dst:             strlen
        - Src:             'smtp-params.c:405,21'
          Dst:             smtp_char_is_textstr
        - Src:             'smtp-params.c:414,18'
          Dst:             p_strdup
    - functionName:    smtp_params_mail_parse_body
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pmparser
        - value
        - extensions
      BBCount:         31
      ICount:          192
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - p_strdup
        - str_array_icase_find
        - strcmp
        - t_str_ucase
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:328,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:329,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:334,6'
              BranchSideFuncs:
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - p_strdup
                - strcmp
                - strcmp
        - Branch String:   'smtp-params.c:334,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:335,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:340,22'
              BranchSideFuncs:
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - p_strdup
                - strcmp
                - strcmp
        - Branch String:   'smtp-params.c:343,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:344,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:346,14'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
                - strcmp
                - strcmp
        - Branch String:   'smtp-params.c:346,52'
          Branch Sides:
            - BranchSide:      'smtp-params.c:347,13'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - p_strdup
                - strcmp
            - BranchSide:      'smtp-params.c:350,14'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
                - strcmp
        - Branch String:   'smtp-params.c:346,13'
          Branch Sides:
            - BranchSide:      'smtp-params.c:348,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:350,14'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
                - strcmp
        - Branch String:   'smtp-params.c:350,54'
          Branch Sides:
            - BranchSide:      'smtp-params.c:351,7'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
                - strcmp
            - BranchSide:      'smtp-params.c:355,13'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
        - Branch String:   'smtp-params.c:351,45'
          Branch Sides:
            - BranchSide:      'smtp-params.c:352,13'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - p_strdup
            - BranchSide:      'smtp-params.c:355,13'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
        - Branch String:   'smtp-params.c:350,13'
          Branch Sides:
            - BranchSide:      'smtp-params.c:353,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:355,13'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
        - Branch String:   'smtp-params.c:355,32'
          Branch Sides:
            - BranchSide:      'smtp-params.c:356,27'
              BranchSideFuncs:
                - str_array_icase_find
                - p_strdup
            - BranchSide:      'smtp-params.c:360,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:355,13'
          Branch Sides:
            - BranchSide:      'smtp-params.c:357,3'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'smtp-params.c:360,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:340,10'
          Dst:             t_str_ucase
        - Src:             'smtp-params.c:343,6'
          Dst:             strcmp
        - Src:             'smtp-params.c:347,6'
          Dst:             strcmp
        - Src:             'smtp-params.c:352,6'
          Dst:             strcmp
        - Src:             'smtp-params.c:356,6'
          Dst:             str_array_icase_find
        - Src:             'smtp-params.c:358,22'
          Dst:             p_strdup
    - functionName:    smtp_params_mail_parse_auth
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pmparser
        - xtext
      BBCount:         16
      ICount:          129
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - smtp_address_parse_mailbox
        - smtp_xtext_parse
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:284,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:285,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:290,6'
              BranchSideFuncs:
                - smtp_xtext_parse
                - strcmp
                - smtp_address_parse_mailbox
                - t_strdup_printf
                - malloc_multiply_check.1292
                - p_malloc.1294
                - t_strdup_printf
        - Branch String:   'smtp-params.c:290,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:291,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:295,23'
              BranchSideFuncs:
                - smtp_xtext_parse
                - strcmp
                - smtp_address_parse_mailbox
                - t_strdup_printf
                - malloc_multiply_check.1292
                - p_malloc.1294
                - t_strdup_printf
        - Branch String:   'smtp-params.c:295,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:297,41'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:301,13'
              BranchSideFuncs:
                - strcmp
                - smtp_address_parse_mailbox
                - t_strdup_printf
                - malloc_multiply_check.1292
                - p_malloc.1294
        - Branch String:   'smtp-params.c:301,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:302,18'
              BranchSideFuncs:
                - malloc_multiply_check.1292
                - p_malloc.1294
            - BranchSide:      'smtp-params.c:304,4'
              BranchSideFuncs:
                - smtp_address_parse_mailbox
                - t_strdup_printf
        - Branch String:   'smtp-params.c:303,13'
          Branch Sides:
            - BranchSide:      'smtp-params.c:308,39'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:312,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:295,6'
          Dst:             smtp_xtext_parse
        - Src:             'smtp-params.c:296,21'
          Dst:             t_strdup_printf
        - Src:             'smtp-params.c:301,6'
          Dst:             strcmp
        - Src:             'smtp-params.c:302,18'
          Dst:             malloc_multiply_check
        - Src:             'smtp-params.c:302,18'
          Dst:             p_malloc
        - Src:             'smtp-params.c:303,13'
          Dst:             smtp_address_parse_mailbox
        - Src:             'smtp-params.c:307,21'
          Dst:             t_strdup_printf
    - functionName:    smtp_params_mail_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-params.c'
      linkageType:     externalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - args
        - caps
        - extensions
        - body_extensions
        - params_r
        - error_code_r
        - error_r
      BBCount:         57
      ICount:          322
      EdgeCount:       76
      CyclomaticComplexity: 21
      functionsReached:
        - pool_datastack_create
        - smtp_param_parse
        - smtp_params_mail_add_extra
        - smtp_params_mail_parse_auth
        - smtp_params_mail_parse_body
        - smtp_params_mail_parse_envid
        - smtp_params_mail_parse_ret
        - smtp_params_mail_parse_size
        - str_array_icase_find
        - strcmp
        - t_str_ucase
        - t_strdup_printf
        - t_strsplit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-params.c:506,2'
          Branch Sides:
            - BranchSide:      'smtp-params.c:507,24'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:580,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:507,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:510,35'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:516,37'
              BranchSideFuncs:
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
        - Branch String:   'smtp-params.c:517,42'
          Branch Sides:
            - BranchSide:      'smtp-params.c:518,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - smtp_params_mail_parse_auth
            - BranchSide:      'smtp-params.c:524,27'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
        - Branch String:   'smtp-params.c:517,7'
          Branch Sides:
            - BranchSide:      'smtp-params.c:520,22'
              BranchSideFuncs:
                - smtp_params_mail_parse_auth
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:524,27'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
        - Branch String:   'smtp-params.c:519,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:521,9'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:524,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
        - Branch String:   'smtp-params.c:524,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:525,53'
              BranchSideFuncs:
                - smtp_params_mail_parse_body
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:530,15'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
        - Branch String:   'smtp-params.c:525,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:527,9'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:530,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
        - Branch String:   'smtp-params.c:530,48'
          Branch Sides:
            - BranchSide:      'smtp-params.c:531,20'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - smtp_params_mail_parse_envid
            - BranchSide:      'smtp-params.c:537,15'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
        - Branch String:   'smtp-params.c:530,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:533,15'
              BranchSideFuncs:
                - smtp_params_mail_parse_envid
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:537,15'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
        - Branch String:   'smtp-params.c:532,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:534,9'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:537,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
        - Branch String:   'smtp-params.c:537,48'
          Branch Sides:
            - BranchSide:      'smtp-params.c:538,20'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
                - smtp_params_mail_parse_ret
            - BranchSide:      'smtp-params.c:555,15'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
        - Branch String:   'smtp-params.c:537,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:540,20'
              BranchSideFuncs:
                - smtp_params_mail_parse_ret
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:555,15'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - strcmp
                - smtp_params_mail_parse_size
        - Branch String:   'smtp-params.c:539,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:541,9'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:555,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
        - Branch String:   'smtp-params.c:555,49'
          Branch Sides:
            - BranchSide:      'smtp-params.c:556,20'
              BranchSideFuncs:
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
                - smtp_params_mail_parse_size
            - BranchSide:      'smtp-params.c:562,14'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
        - Branch String:   'smtp-params.c:555,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:558,14'
              BranchSideFuncs:
                - smtp_params_mail_parse_size
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:562,14'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
        - Branch String:   'smtp-params.c:557,8'
          Branch Sides:
            - BranchSide:      'smtp-params.c:559,9'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:562,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
        - Branch String:   'smtp-params.c:562,33'
          Branch Sides:
            - BranchSide:      'smtp-params.c:563,28'
              BranchSideFuncs:
                - str_array_icase_find
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:574,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:562,14'
          Branch Sides:
            - BranchSide:      'smtp-params.c:566,31'
              BranchSideFuncs:
                - smtp_params_mail_add_extra
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - strcmp
                - str_array_icase_find
                - strcmp
                - smtp_params_mail_parse_size
                - strcmp
                - smtp_params_mail_parse_ret
                - strcmp
                - smtp_params_mail_parse_envid
                - smtp_params_mail_parse_body
                - strcmp
                - smtp_params_mail_parse_auth
                - t_strdup_printf
            - BranchSide:      'smtp-params.c:574,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-params.c:580,6'
          Branch Sides:
            - BranchSide:      'smtp-params.c:581,23'
              BranchSideFuncs: []
            - BranchSide:      'smtp-params.c:584,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-params.c:505,9'
          Dst:             t_strsplit
        - Src:             'smtp-params.c:507,24'
          Dst:             pool_datastack_create
        - Src:             'smtp-params.c:507,7'
          Dst:             smtp_param_parse
        - Src:             'smtp-params.c:509,15'
          Dst:             t_strdup_printf
        - Src:             'smtp-params.c:516,19'
          Dst:             t_str_ucase
        - Src:             'smtp-params.c:518,7'
          Dst:             strcmp
        - Src:             'smtp-params.c:519,8'
          Dst:             smtp_params_mail_parse_auth
        - Src:             'smtp-params.c:524,14'
          Dst:             strcmp
        - Src:             'smtp-params.c:525,8'
          Dst:             smtp_params_mail_parse_body
        - Src:             'smtp-params.c:531,7'
          Dst:             strcmp
        - Src:             'smtp-params.c:532,8'
          Dst:             smtp_params_mail_parse_envid
        - Src:             'smtp-params.c:538,7'
          Dst:             strcmp
        - Src:             'smtp-params.c:539,8'
          Dst:             smtp_params_mail_parse_ret
        - Src:             'smtp-params.c:556,7'
          Dst:             strcmp
        - Src:             'smtp-params.c:557,8'
          Dst:             smtp_params_mail_parse_size
        - Src:             'smtp-params.c:563,7'
          Dst:             str_array_icase_find
        - Src:             'smtp-params.c:566,4'
          Dst:             smtp_params_mail_add_extra
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_reply_is_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-reply.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_reply_add_to_event
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - e
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_reply_get_enh_code
        - smtp_reply_get_message
        - smtp_reply_is_success
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-reply.c:184,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:184,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply.c:185,3'
              BranchSideFuncs:
                - smtp_reply_get_message
      Callsites:
        - Src:             'smtp-reply.c:180,25'
          Dst:             smtp_reply_get_enh_code
        - Src:             'smtp-reply.c:184,7'
          Dst:             smtp_reply_is_success
        - Src:             'smtp-reply.c:185,23'
          Dst:             smtp_reply_get_message
    - functionName:    smtp_reply_get_enh_code
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - t_strdup_printf
      functionUses:    5
      BranchProfiles:
        - Branch String:   'smtp-reply.c:35,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:36,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply.c:37,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'smtp-reply.c:37,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:38,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply.c:41,3'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'smtp-reply.c:40,9'
          Dst:             t_strdup_printf
    - functionName:    smtp_reply_get_message
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_reply_write_message_one_line
        - str_c
        - t_str_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply.c:153,18'
          Dst:             t_str_new
        - Src:             'smtp-reply.c:155,2'
          Dst:             smtp_reply_write_message_one_line
        - Src:             'smtp-reply.c:156,9'
          Dst:             str_c
    - functionName:    smtp_reply_write_message_one_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - reply
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_append
        - str_append_c
        - str_len
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-reply.c:109,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:110,15'
              BranchSideFuncs:
                - str_len.1440
                - str_append.1448
                - str_append_c.1447
            - BranchSide:      'smtp-reply.c:115,1'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply.c:110,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:111,4'
              BranchSideFuncs:
                - str_append_c.1447
                - str_append.1448
                - str_len.1440
            - BranchSide:      'smtp-reply.c:112,14'
              BranchSideFuncs:
                - str_append.1448
                - str_len.1440
                - str_append_c.1447
      Callsites:
        - Src:             'smtp-reply.c:110,7'
          Dst:             str_len
        - Src:             'smtp-reply.c:111,4'
          Dst:             str_append_c
        - Src:             'smtp-reply.c:112,3'
          Dst:             str_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_reply_clone
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - src
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - smtp_reply_copy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply.c:171,8'
          Dst:             malloc_multiply_check
        - Src:             'smtp-reply.c:171,8'
          Dst:             p_malloc
        - Src:             'smtp-reply.c:172,2'
          Dst:             smtp_reply_copy
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    smtp_reply_copy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - dst
        - src
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strarray_dup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply.c:163,20'
          Dst:             p_strarray_dup
    - functionName:    smtp_reply_is_remote
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-reply.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './smtp-reply.h:39,31'
          Branch Sides:
            - BranchSide:      './smtp-reply.h:39,34'
              BranchSideFuncs: []
            - BranchSide:      './smtp-reply.h:39,31'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_reply_log
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_reply_get_enh_code
        - smtp_reply_is_remote
        - smtp_reply_write_message_one_line
        - str_append
        - str_append_c
        - str_c
        - str_printfa
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply.c:137,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:137,6'
              BranchSideFuncs:
                - smtp_reply_get_enh_code
                - str_printfa
                - smtp_reply_write_message_one_line
                - str_c
                - str_append_c.1447
                - str_append.1448
            - BranchSide:      'smtp-reply.c:138,50'
              BranchSideFuncs:
                - smtp_reply_get_enh_code
                - str_printfa
                - smtp_reply_write_message_one_line
                - str_c
                - str_append_c.1447
                - str_append.1448
        - Branch String:   'smtp-reply.c:141,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:142,4'
              BranchSideFuncs:
                - str_append_c.1447
                - str_append.1448
                - smtp_reply_write_message_one_line
                - str_c
            - BranchSide:      'smtp-reply.c:145,2'
              BranchSideFuncs:
                - smtp_reply_write_message_one_line
                - str_c
      Callsites:
        - Src:             'smtp-reply.c:135,18'
          Dst:             t_str_new
        - Src:             'smtp-reply.c:137,6'
          Dst:             smtp_reply_is_remote
        - Src:             'smtp-reply.c:138,26'
          Dst:             smtp_reply_get_enh_code
        - Src:             'smtp-reply.c:140,3'
          Dst:             str_printfa
        - Src:             'smtp-reply.c:142,4'
          Dst:             str_append_c
        - Src:             'smtp-reply.c:143,4'
          Dst:             str_append
        - Src:             'smtp-reply.c:147,2'
          Dst:             smtp_reply_write_message_one_line
        - Src:             'smtp-reply.c:148,9'
          Dst:             str_c
    - functionName:    smtp_reply_write_one_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - reply
      BBCount:         14
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_reply_get_enh_code
        - smtp_reply_write_message_one_line
        - str_append
        - str_append_c
        - str_printfa
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-reply.c:121,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:121,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply.c:122,2'
              BranchSideFuncs:
                - str_printfa
                - smtp_reply_write_message_one_line
                - str_append_c.1447
                - str_append.1448
                - i_panic
        - Branch String:   'smtp-reply.c:122,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:122,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply.c:124,14'
              BranchSideFuncs:
                - str_printfa
                - smtp_reply_write_message_one_line
                - str_append_c.1447
                - str_append.1448
        - Branch String:   'smtp-reply.c:125,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:125,6'
              BranchSideFuncs:
                - str_append_c.1447
                - str_append.1448
                - smtp_reply_write_message_one_line
            - BranchSide:      'smtp-reply.c:126,3'
              BranchSideFuncs:
                - str_append_c.1447
                - str_append.1448
                - smtp_reply_write_message_one_line
      Callsites:
        - Src:             'smtp-reply.c:119,25'
          Dst:             smtp_reply_get_enh_code
        - Src:             'smtp-reply.c:121,2'
          Dst:             i_panic
        - Src:             'smtp-reply.c:122,2'
          Dst:             i_panic
        - Src:             'smtp-reply.c:124,2'
          Dst:             str_printfa
        - Src:             'smtp-reply.c:126,3'
          Dst:             str_append_c
        - Src:             'smtp-reply.c:127,3'
          Dst:             str_append
        - Src:             'smtp-reply.c:130,2'
          Dst:             smtp_reply_write_message_one_line
    - functionName:    smtp_reply_write
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - out
        - reply
      BBCount:         29
      ICount:          170
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - smtp_reply_get_enh_code
        - str_append
        - str_append_c
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-reply.c:70,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:70,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply.c:71,2'
              BranchSideFuncs:
                - t_strdup_printf
                - smtp_reply_get_enh_code
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - i_panic
        - Branch String:   'smtp-reply.c:71,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:71,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply.c:73,35'
              BranchSideFuncs:
                - t_strdup_printf
                - smtp_reply_get_enh_code
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
        - Branch String:   'smtp-reply.c:76,32'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:76,36'
              BranchSideFuncs:
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
            - BranchSide:      'smtp-reply.c:77,14'
              BranchSideFuncs:
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
        - Branch String:   'smtp-reply.c:76,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:77,14'
              BranchSideFuncs:
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
            - BranchSide:      'smtp-reply.c:86,10'
              BranchSideFuncs:
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append_c.1447
        - Branch String:   'smtp-reply.c:78,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:79,4'
              BranchSideFuncs:
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
            - BranchSide:      'smtp-reply.c:82,14'
              BranchSideFuncs:
                - str_append.1448
        - Branch String:   'smtp-reply.c:87,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:87,2'
              BranchSideFuncs:
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append_c.1447
            - BranchSide:      'smtp-reply.c:88,14'
              BranchSideFuncs:
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append_c.1447
        - Branch String:   'smtp-reply.c:89,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:90,4'
              BranchSideFuncs:
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append_c.1447
            - BranchSide:      'smtp-reply.c:92,4'
              BranchSideFuncs:
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append_c.1447
        - Branch String:   'smtp-reply.c:93,7'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:94,15'
              BranchSideFuncs:
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append_c.1447
            - BranchSide:      'smtp-reply.c:97,14'
              BranchSideFuncs:
                - str_append.1448
                - str_append.1448
                - str_append.1448
                - str_append_c.1447
                - str_append.1448
                - str_append_c.1447
                - str_append_c.1447
      Callsites:
        - Src:             'smtp-reply.c:70,2'
          Dst:             i_panic
        - Src:             'smtp-reply.c:71,2'
          Dst:             i_panic
        - Src:             'smtp-reply.c:73,11'
          Dst:             t_strdup_printf
        - Src:             'smtp-reply.c:74,13'
          Dst:             smtp_reply_get_enh_code
        - Src:             'smtp-reply.c:77,3'
          Dst:             str_append
        - Src:             'smtp-reply.c:79,4'
          Dst:             str_append_c
        - Src:             'smtp-reply.c:80,4'
          Dst:             str_append
        - Src:             'smtp-reply.c:82,3'
          Dst:             str_append
        - Src:             'smtp-reply.c:88,3'
          Dst:             str_append
        - Src:             'smtp-reply.c:90,4'
          Dst:             str_append_c
        - Src:             'smtp-reply.c:92,4'
          Dst:             str_append_c
        - Src:             'smtp-reply.c:94,4'
          Dst:             str_append
        - Src:             'smtp-reply.c:95,4'
          Dst:             str_append_c
        - Src:             'smtp-reply.c:97,3'
          Dst:             str_append
        - Src:             'smtp-reply.c:98,3'
          Dst:             str_append
    - functionName:    smtp_reply_get_text_lines_omit_prefix
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - malloc_multiply_check
        - str_array_length
        - strchr
        - t_malloc0
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-reply.c:51,6'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:52,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply.c:54,33'
              BranchSideFuncs:
                - str_array_length
                - malloc_multiply_check.1453
                - t_malloc0
        - Branch String:   'smtp-reply.c:58,2'
          Branch Sides:
            - BranchSide:      'smtp-reply.c:59,14'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply.c:61,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-reply.c:51,9'
          Dst:             strchr
        - Src:             'smtp-reply.c:54,16'
          Dst:             str_array_length
        - Src:             'smtp-reply.c:55,10'
          Dst:             malloc_multiply_check
        - Src:             'smtp-reply.c:55,10'
          Dst:             t_malloc0
    - functionName:    smtp_reply_printf
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - status
        - format
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_reply_init
        - t_strdup_vprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply.c:28,33'
          Dst:             t_strdup_vprintf
        - Src:             'smtp-reply.c:28,2'
          Dst:             smtp_reply_init
    - functionName:    smtp_reply_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply.c'
      linkageType:     externalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 20
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - reply
        - status
        - text
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - t_malloc0
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply.c:12,28'
          Dst:             malloc_multiply_check
        - Src:             'smtp-reply.c:12,28'
          Dst:             t_malloc0
    - functionName:    smtp_char_is_ehlo_greet
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    smtp_reply_parser_parse_enhanced_code
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - text
        - parser
        - pos_r
      BBCount:         27
      ICount:          165
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - smtp_reply_parse_enhanced_code
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:336,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:337,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:339,38'
              BranchSideFuncs:
                - smtp_reply_parse_enhanced_code
        - Branch String:   'smtp-reply-parser.c:339,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:341,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:346,8'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:346,21'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:346,26'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:348,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:346,40'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:346,45'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:348,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:346,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:347,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:348,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:351,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:353,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:357,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:357,29'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:358,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:364,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:358,29'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:358,32'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:361,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:358,54'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:359,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:361,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:357,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:361,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:364,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-reply-parser.c:339,7'
          Dst:             smtp_reply_parse_enhanced_code
    - functionName:    smtp_reply_parse_enhanced_code
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - text
        - enh_code_r
        - pos_r
      BBCount:         46
      ICount:          289
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - __ctype_b_loc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:108,18'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:108,22'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:109,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:108,34'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:108,37'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:110,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:108,49'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:108,52'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:110,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:108,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:109,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:110,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:116,20'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:116,23'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:116,2'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:116,37'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:116,46'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:116,2'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:116,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:117,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:120,6'
              BranchSideFuncs:
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:120,18'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:120,22'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:121,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:120,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:121,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:122,3'
              BranchSideFuncs:
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:127,20'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:127,23'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:127,2'
              BranchSideFuncs:
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:127,37'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:127,46'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:127,2'
              BranchSideFuncs:
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:127,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:128,7'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:131,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:131,18'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:131,22'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:132,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:131,36'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:131,40'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:134,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:131,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:132,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:134,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:134,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:136,12'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:139,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-reply-parser.c:116,23'
          Dst:             __ctype_b_loc
        - Src:             'smtp-reply-parser.c:127,23'
          Dst:             __ctype_b_loc
    - functionName:    smtp_char_is_textstr
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1547
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.1547
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    3
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    smtp_reply_parse_ehlo_greet
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         23
      ICount:          164
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - smtp_char_is_ehlo_greet
        - smtp_char_is_textstr
        - smtp_reply_parser_error
        - str_append_c
        - str_append_data
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:288,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:289,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:290,31'
              BranchSideFuncs:
                - smtp_char_is_ehlo_greet
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
        - Branch String:   'smtp-reply-parser.c:290,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:291,3'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
            - BranchSide:      'smtp-reply-parser.c:317,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:292,37'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:292,4'
              BranchSideFuncs:
                - smtp_char_is_textstr.1544
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:293,27'
              BranchSideFuncs:
                - smtp_char_is_textstr.1544
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:292,4'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:294,5'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
            - BranchSide:      'smtp-reply-parser.c:296,10'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - smtp_char_is_textstr.1544
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:296,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:299,29'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:305,20'
              BranchSideFuncs:
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - str_len.1548
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
        - Branch String:   'smtp-reply-parser.c:308,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:309,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:310,34'
              BranchSideFuncs:
                - smtp_char_is_ehlo_greet
                - str_append_c.1552
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
        - Branch String:   'smtp-reply-parser.c:310,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:311,5'
              BranchSideFuncs:
                - str_append_c.1552
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
            - BranchSide:      'smtp-reply-parser.c:312,4'
              BranchSideFuncs:
                - str_append_c.1552
                - str_len.1548
                - str_append_data.1546
                - smtp_char_is_ehlo_greet
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
      Callsites:
        - Src:             'smtp-reply-parser.c:290,6'
          Dst:             smtp_char_is_ehlo_greet
        - Src:             'smtp-reply-parser.c:293,5'
          Dst:             smtp_char_is_textstr
        - Src:             'smtp-reply-parser.c:297,5'
          Dst:             str_len
        - Src:             'smtp-reply-parser.c:299,5'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:305,4'
          Dst:             str_append_data
        - Src:             'smtp-reply-parser.c:310,9'
          Dst:             smtp_char_is_ehlo_greet
        - Src:             'smtp-reply-parser.c:312,4'
          Dst:             str_append_c
    - functionName:    smtp_reply_parser_error
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - format
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup_vprintf
        - p_free_internal
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply-parser.c:151,2'
          Dst:             p_free_internal
        - Src:             'smtp-reply-parser.c:154,18'
          Dst:             i_strdup_vprintf
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_reply_parser_finish_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - p_strdup
        - smtp_reply_parser_parse_enhanced_code
        - str_c
        - str_len
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:371,29'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:371,40'
              BranchSideFuncs:
                - str_len.1548
                - str_len.1548
                - p_strdup
                - array_append_i.1541
                - str_truncate.1550
                - smtp_reply_parser_parse_enhanced_code
            - BranchSide:      'smtp-reply-parser.c:371,29'
              BranchSideFuncs:
                - str_len.1548
                - p_strdup
                - array_append_i.1541
                - str_truncate.1550
        - Branch String:   'smtp-reply-parser.c:371,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:371,6'
              BranchSideFuncs:
                - smtp_reply_parser_parse_enhanced_code
                - str_len.1548
                - p_strdup
                - array_append_i.1541
                - str_truncate.1550
            - BranchSide:      'smtp-reply-parser.c:372,41'
              BranchSideFuncs:
                - smtp_reply_parser_parse_enhanced_code
                - str_len.1548
                - p_strdup
                - array_append_i.1541
                - str_truncate.1550
      Callsites:
        - Src:             'smtp-reply-parser.c:369,21'
          Dst:             str_c
        - Src:             'smtp-reply-parser.c:371,32'
          Dst:             str_len
        - Src:             'smtp-reply-parser.c:372,3'
          Dst:             smtp_reply_parser_parse_enhanced_code
        - Src:             'smtp-reply-parser.c:375,30'
          Dst:             str_len
        - Src:             'smtp-reply-parser.c:376,9'
          Dst:             p_strdup
        - Src:             'smtp-reply-parser.c:377,2'
          Dst:             array_append_i
        - Src:             'smtp-reply-parser.c:378,2'
          Dst:             str_truncate
    - functionName:    smtp_reply_parse_textstring
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         14
      ICount:          115
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - smtp_char_is_textstr
        - smtp_reply_parser_error
        - str_append_data
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:241,35'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:241,60'
              BranchSideFuncs:
                - smtp_char_is_textstr.1544
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:241,2'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
        - Branch String:   'smtp-reply-parser.c:241,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:242,3'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
            - BranchSide:      'smtp-reply-parser.c:244,8'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:244,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:246,27'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:251,18'
              BranchSideFuncs:
                - str_append_data.1546
        - Branch String:   'smtp-reply-parser.c:252,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:253,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:254,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-reply-parser.c:241,38'
          Dst:             smtp_char_is_textstr
        - Src:             'smtp-reply-parser.c:245,3'
          Dst:             str_len
        - Src:             'smtp-reply-parser.c:246,3'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:251,2'
          Dst:             str_append_data
    - functionName:    smtp_reply_parse_ehlo_domain
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         16
      ICount:          127
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - smtp_char_is_textstr
        - smtp_reply_parser_error
        - str_append_data
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:263,35'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:263,39'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
            - BranchSide:      'smtp-reply-parser.c:263,2'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
        - Branch String:   'smtp-reply-parser.c:263,58'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:263,2'
              BranchSideFuncs:
                - smtp_char_is_textstr.1544
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:264,25'
              BranchSideFuncs:
                - smtp_char_is_textstr.1544
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:263,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:265,3'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
                - smtp_char_is_textstr.1544
            - BranchSide:      'smtp-reply-parser.c:267,8'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:267,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:269,27'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:273,18'
              BranchSideFuncs:
                - str_append_data.1546
        - Branch String:   'smtp-reply-parser.c:274,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:275,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:276,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-reply-parser.c:264,3'
          Dst:             smtp_char_is_textstr
        - Src:             'smtp-reply-parser.c:268,3'
          Dst:             str_len
        - Src:             'smtp-reply-parser.c:269,3'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:273,2'
          Dst:             str_append_data
    - functionName:    _chr_sanitize
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - c
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:322,16'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:322,19'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'smtp-reply-parser.c:324,35'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'smtp-reply-parser.c:322,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:323,34'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-reply-parser.c:324,35'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'smtp-reply-parser.c:323,10'
          Dst:             t_strdup_printf
        - Src:             'smtp-reply-parser.c:324,9'
          Dst:             t_strdup_printf
    - functionName:    smtp_reply_parse_code
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - code_r
      BBCount:         23
      ICount:          196
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - __ctype_b_loc
        - str_append_data
        - str_data
        - str_len
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:216,35'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:216,38'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_len.1548
                - str_append_data.1546
                - str_len.1548
                - str_data.1545
                - str_truncate.1550
            - BranchSide:      'smtp-reply-parser.c:216,2'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - str_len.1548
                - str_data.1545
                - str_truncate.1550
                - __ctype_b_loc
        - Branch String:   'smtp-reply-parser.c:216,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:217,3'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - str_len.1548
                - str_data.1545
                - str_truncate.1550
                - __ctype_b_loc
            - BranchSide:      'smtp-reply-parser.c:219,14'
              BranchSideFuncs:
                - str_len.1548
                - str_append_data.1546
                - str_len.1548
                - str_data.1545
                - str_truncate.1550
        - Branch String:   'smtp-reply-parser.c:219,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:220,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:222,18'
              BranchSideFuncs:
                - str_append_data.1546
                - str_len.1548
                - str_data.1545
                - str_truncate.1550
        - Branch String:   'smtp-reply-parser.c:223,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:224,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:225,14'
              BranchSideFuncs:
                - str_len.1548
                - str_data.1545
                - str_truncate.1550
        - Branch String:   'smtp-reply-parser.c:225,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:226,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:227,15'
              BranchSideFuncs:
                - str_data.1545
                - str_truncate.1550
        - Branch String:   'smtp-reply-parser.c:228,17'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:228,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:229,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:228,31'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:228,34'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:229,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:228,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:229,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:230,13'
              BranchSideFuncs:
                - str_truncate.1550
      Callsites:
        - Src:             'smtp-reply-parser.c:216,38'
          Dst:             __ctype_b_loc
        - Src:             'smtp-reply-parser.c:219,6'
          Dst:             str_len
        - Src:             'smtp-reply-parser.c:222,2'
          Dst:             str_append_data
        - Src:             'smtp-reply-parser.c:225,6'
          Dst:             str_len
        - Src:             'smtp-reply-parser.c:227,6'
          Dst:             str_data
        - Src:             'smtp-reply-parser.c:231,2'
          Dst:             str_truncate
    - functionName:    smtp_reply_parser_restart
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_i
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - pool_unref
        - str_truncate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply-parser.c:198,2'
          Dst:             str_truncate
        - Src:             'smtp-reply-parser.c:199,2'
          Dst:             pool_unref
        - Src:             'smtp-reply-parser.c:202,23'
          Dst:             pool_alloconly_create
        - Src:             'smtp-reply-parser.c:203,24'
          Dst:             malloc_multiply_check
        - Src:             'smtp-reply-parser.c:203,24'
          Dst:             p_malloc
        - Src:             'smtp-reply-parser.c:204,2'
          Dst:             array_create_i
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
        - wanted
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_read_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/istream.h:229,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/istream.h:229,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/istream.h:229,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             '../../src/lib/istream.h:229,2'
          Dst:             i_panic
        - Src:             '../../src/lib/istream.h:230,9'
          Dst:             i_stream_read_data
    - functionName:    smtp_reply_parse_more
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         78
      ICount:          541
      EdgeCount:       97
      CyclomaticComplexity: 21
      functionsReached:
        - _chr_sanitize
        - i_unreached
        - smtp_reply_parse_code
        - smtp_reply_parse_ehlo_domain
        - smtp_reply_parse_ehlo_greet
        - smtp_reply_parse_textstring
        - smtp_reply_parser_error
        - smtp_reply_parser_finish_line
        - smtp_reply_parser_restart
        - str_append_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:398,3'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:400,30'
              BranchSideFuncs:
                - smtp_reply_parser_restart
                - smtp_reply_parse_code
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:405,35'
              BranchSideFuncs:
                - smtp_reply_parse_code
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:425,13'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:457,8'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
            - BranchSide:      'smtp-reply-parser.c:479,9'
              BranchSideFuncs:
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:493,9'
              BranchSideFuncs:
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:493,9'
              BranchSideFuncs:
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:516,9'
              BranchSideFuncs:
                - str_append_c.1552
                - smtp_reply_parse_ehlo_greet
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
            - BranchSide:      'smtp-reply-parser.c:528,41'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
            - BranchSide:      'smtp-reply-parser.c:535,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:405,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:406,9'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:412,8'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:406,9'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:407,30'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:410,12'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:412,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:413,35'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:414,15'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:414,15'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:0,0'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:415,29'
              BranchSideFuncs:
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:420,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:420,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:421,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:425,4'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:428,5'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
            - BranchSide:      'smtp-reply-parser.c:435,5'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
            - BranchSide:      'smtp-reply-parser.c:443,5'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
            - BranchSide:      'smtp-reply-parser.c:443,5'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
            - BranchSide:      'smtp-reply-parser.c:447,29'
              BranchSideFuncs:
                - _chr_sanitize
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:452,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:452,31'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
            - BranchSide:      'smtp-reply-parser.c:453,5'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:457,21'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:458,5'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
            - BranchSide:      'smtp-reply-parser.c:471,41'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:458,40'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:459,5'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_ehlo_domain
            - BranchSide:      'smtp-reply-parser.c:471,41'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:457,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:463,43'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_domain
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
            - BranchSide:      'smtp-reply-parser.c:471,41'
              BranchSideFuncs:
                - smtp_reply_parse_textstring
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:463,9'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:464,13'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:465,5'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:467,9'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:468,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:469,5'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:471,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:472,12'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:473,4'
              BranchSideFuncs:
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:474,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:474,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:475,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:479,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:480,5'
              BranchSideFuncs:
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:484,5'
              BranchSideFuncs:
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:487,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:487,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:488,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:493,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:494,9'
              BranchSideFuncs:
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:505,4'
              BranchSideFuncs:
                - smtp_reply_parser_finish_line
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:494,9'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:496,30'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:499,30'
              BranchSideFuncs:
                - _chr_sanitize
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:507,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:508,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:512,4'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:516,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:517,5'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
            - BranchSide:      'smtp-reply-parser.c:520,4'
              BranchSideFuncs:
                - str_append_c.1552
                - smtp_reply_parse_ehlo_greet
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:523,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:523,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:524,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:528,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:529,12'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:530,4'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
        - Branch String:   'smtp-reply-parser.c:531,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:532,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:533,4'
              BranchSideFuncs:
                - smtp_reply_parse_ehlo_greet
                - str_append_c.1552
                - smtp_reply_parser_finish_line
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parse_textstring
                - smtp_reply_parse_ehlo_domain
                - _chr_sanitize
                - smtp_reply_parser_error
                - smtp_reply_parse_code
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - smtp_reply_parser_restart
                - i_unreached
      Callsites:
        - Src:             'smtp-reply-parser.c:400,4'
          Dst:             smtp_reply_parser_restart
        - Src:             'smtp-reply-parser.c:405,13'
          Dst:             smtp_reply_parse_code
        - Src:             'smtp-reply-parser.c:407,6'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:415,5'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:449,6'
          Dst:             _chr_sanitize
        - Src:             'smtp-reply-parser.c:447,5'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:463,14'
          Dst:             smtp_reply_parse_ehlo_domain
        - Src:             'smtp-reply-parser.c:471,13'
          Dst:             smtp_reply_parse_textstring
        - Src:             'smtp-reply-parser.c:496,6'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:501,7'
          Dst:             _chr_sanitize
        - Src:             'smtp-reply-parser.c:499,6'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:506,4'
          Dst:             smtp_reply_parser_finish_line
        - Src:             'smtp-reply-parser.c:521,4'
          Dst:             str_append_c
        - Src:             'smtp-reply-parser.c:528,13'
          Dst:             smtp_reply_parse_ehlo_greet
        - Src:             'smtp-reply-parser.c:535,4'
          Dst:             i_unreached
    - functionName:    i_stream_read_more
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
      BBCount:         7
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_read_bytes
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/istream.h:238,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/istream.h:238,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/istream.h:238,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/istream.h:237,12'
          Dst:             i_stream_read_bytes
        - Src:             '../../src/lib/istream.h:238,2'
          Dst:             i_panic
    - functionName:    smtp_reply_parse_ehlo
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - reply_r
        - error_r
      BBCount:         22
      ICount:          160
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_count_i
        - array_idx_i
        - i_panic
        - p_free_internal
        - smtp_reply_parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:619,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:619,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:619,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
        - Branch String:   'smtp-reply-parser.c:619,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:619,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:619,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
        - Branch String:   'smtp-reply-parser.c:619,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:619,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:622,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
        - Branch String:   'smtp-reply-parser.c:643,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:644,14'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:648,2'
              BranchSideFuncs:
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
        - Branch String:   'smtp-reply-parser.c:648,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:648,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:649,2'
              BranchSideFuncs:
                - array_append_space_i.1576
                - array_idx_i.1577
      Callsites:
        - Src:             'smtp-reply-parser.c:619,2'
          Dst:             i_panic
        - Src:             'smtp-reply-parser.c:625,2'
          Dst:             p_free_internal
        - Src:             'smtp-reply-parser.c:643,11'
          Dst:             smtp_reply_parse
        - Src:             'smtp-reply-parser.c:648,2'
          Dst:             array_count_i
        - Src:             'smtp-reply-parser.c:648,2'
          Dst:             i_panic
        - Src:             'smtp-reply-parser.c:649,2'
          Dst:             array_append_space_i
        - Src:             'smtp-reply-parser.c:653,3'
          Dst:             array_idx_i
    - functionName:    smtp_reply_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         27
      ICount:          168
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - i_stream_get_error
        - i_stream_read_more
        - i_stream_skip
        - smtp_reply_parse_more
        - smtp_reply_parser_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:547,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:549,17'
              BranchSideFuncs:
                - smtp_reply_parse_more
                - i_stream_skip
                - i_stream_read_more
                - i_stream_get_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:560,2'
              BranchSideFuncs:
                - i_stream_get_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - i_panic
                - i_panic
        - Branch String:   'smtp-reply-parser.c:552,7'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:553,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:555,17'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read_more
                - i_stream_get_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - i_panic
                - i_panic
                - smtp_reply_parse_more
        - Branch String:   'smtp-reply-parser.c:556,7'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:547,2'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:557,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:560,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:560,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:561,6'
              BranchSideFuncs:
                - i_stream_get_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - i_panic
        - Branch String:   'smtp-reply-parser.c:561,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:562,3'
              BranchSideFuncs:
                - i_stream_get_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:574,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-reply-parser.c:562,3'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:562,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:563,7'
              BranchSideFuncs:
                - i_stream_get_error
                - smtp_reply_parser_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:563,7'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:564,8'
              BranchSideFuncs:
                - smtp_reply_parser_error
            - BranchSide:      'smtp-reply-parser.c:569,28'
              BranchSideFuncs:
                - i_stream_get_error
                - smtp_reply_parser_error
        - Branch String:   'smtp-reply-parser.c:564,8'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:565,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:566,28'
              BranchSideFuncs:
                - smtp_reply_parser_error
      Callsites:
        - Src:             'smtp-reply-parser.c:547,16'
          Dst:             i_stream_read_more
        - Src:             'smtp-reply-parser.c:552,14'
          Dst:             smtp_reply_parse_more
        - Src:             'smtp-reply-parser.c:555,3'
          Dst:             i_stream_skip
        - Src:             'smtp-reply-parser.c:560,2'
          Dst:             i_panic
        - Src:             'smtp-reply-parser.c:562,3'
          Dst:             i_panic
        - Src:             'smtp-reply-parser.c:566,4'
          Dst:             smtp_reply_parser_error
        - Src:             'smtp-reply-parser.c:571,5'
          Dst:             i_stream_get_error
        - Src:             'smtp-reply-parser.c:569,4'
          Dst:             smtp_reply_parser_error
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    smtp_reply_parse_next
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - enhanced_codes
        - reply_r
        - error_r
      BBCount:         22
      ICount:          175
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_count_i
        - array_idx_i
        - i_panic
        - p_free_internal
        - smtp_reply_parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:583,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:583,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:583,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
        - Branch String:   'smtp-reply-parser.c:583,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:583,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:583,2'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
                - i_panic
        - Branch String:   'smtp-reply-parser.c:583,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:583,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:586,27'
              BranchSideFuncs:
                - p_free_internal.1553
                - smtp_reply_parse
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
        - Branch String:   'smtp-reply-parser.c:599,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:600,14'
              BranchSideFuncs: []
            - BranchSide:      'smtp-reply-parser.c:604,2'
              BranchSideFuncs:
                - array_count_i.1574
                - array_append_space_i.1576
                - array_idx_i.1577
                - i_panic
        - Branch String:   'smtp-reply-parser.c:604,2'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:604,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-reply-parser.c:605,2'
              BranchSideFuncs:
                - array_append_space_i.1576
                - array_idx_i.1577
      Callsites:
        - Src:             'smtp-reply-parser.c:583,2'
          Dst:             i_panic
        - Src:             'smtp-reply-parser.c:589,2'
          Dst:             p_free_internal
        - Src:             'smtp-reply-parser.c:599,11'
          Dst:             smtp_reply_parse
        - Src:             'smtp-reply-parser.c:604,2'
          Dst:             array_count_i
        - Src:             'smtp-reply-parser.c:604,2'
          Dst:             i_panic
        - Src:             'smtp-reply-parser.c:605,2'
          Dst:             array_append_space_i
        - Src:             'smtp-reply-parser.c:609,3'
          Dst:             array_idx_i
    - functionName:    smtp_reply_parser_set_stream
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - input
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_ref
        - i_stream_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:189,6'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:189,6'
              BranchSideFuncs:
                - i_stream_ref
            - BranchSide:      'smtp-reply-parser.c:190,19'
              BranchSideFuncs:
                - i_stream_ref
      Callsites:
        - Src:             'smtp-reply-parser.c:188,2'
          Dst:             i_stream_unref
        - Src:             'smtp-reply-parser.c:191,3'
          Dst:             i_stream_ref
    - functionName:    smtp_reply_parser_deinit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _parser
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_unref
        - p_free_internal
        - pool_unref
        - str_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-reply-parser.c:178,2'
          Dst:             str_free
        - Src:             'smtp-reply-parser.c:179,2'
          Dst:             pool_unref
        - Src:             'smtp-reply-parser.c:180,2'
          Dst:             i_stream_unref
        - Src:             'smtp-reply-parser.c:181,2'
          Dst:             p_free_internal
        - Src:             'smtp-reply-parser.c:182,2'
          Dst:             p_free_internal
    - functionName:    smtp_reply_parser_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-reply-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - max_reply_size
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_ref
        - malloc_multiply_check
        - p_malloc
        - str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-reply-parser.c:165,4'
          Branch Sides:
            - BranchSide:      'smtp-reply-parser.c:165,25'
              BranchSideFuncs:
                - i_stream_ref
                - str_new
            - BranchSide:      'smtp-reply-parser.c:165,4'
              BranchSideFuncs:
                - i_stream_ref
                - str_new
      Callsites:
        - Src:             'smtp-reply-parser.c:163,11'
          Dst:             malloc_multiply_check
        - Src:             'smtp-reply-parser.c:163,11'
          Dst:             p_malloc
        - Src:             'smtp-reply-parser.c:167,2'
          Dst:             i_stream_ref
        - Src:             'smtp-reply-parser.c:168,19'
          Dst:             str_new
    - functionName:    uni_utf8_char_bytes
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/unichar.h'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - chr
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/unichar.h:113,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/unichar.h:114,3'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/unichar.h:115,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_char_is_textstr
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_command_parse_parameters
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         96
      ICount:          631
      EdgeCount:       128
      CyclomaticComplexity: 34
      functionsReached:
        - buffer_append
        - buffer_create_dynamic
        - buffer_free_without_data
        - i_panic
        - i_strdup_until
        - i_stream_get_max_buffer_size
        - smtp_char_is_textstr
        - smtp_command_parser_error
        - uni_utf8_char_bytes
        - uni_utf8_get_char_n
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:191,21'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:192,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
            - BranchSide:      'smtp-command-parser.c:193,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
        - Branch String:   'smtp-command-parser.c:194,21'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:194,9'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
            - BranchSide:      'smtp-command-parser.c:195,11'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
        - Branch String:   'smtp-command-parser.c:198,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:198,2'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
            - BranchSide:      'smtp-command-parser.c:198,2'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
        - Branch String:   'smtp-command-parser.c:198,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:198,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:199,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:199,19'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:199,22'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:210,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:199,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:201,4'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:210,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:211,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:214,7'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:234,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:214,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:215,10'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:219,30'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:215,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:216,5'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:217,10'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:222,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:223,4'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:224,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:224,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:226,5'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:230,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_command_parser_error
                - smtp_char_is_textstr.1633
        - Branch String:   'smtp-command-parser.c:230,16'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:230,56'
              BranchSideFuncs:
                - smtp_char_is_textstr.1633
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:232,8'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:230,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:231,4'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:232,8'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
                - uni_utf8_get_char_n
                - smtp_char_is_textstr.1633
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:234,19'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:234,31'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:241,23'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
        - Branch String:   'smtp-command-parser.c:234,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:236,4'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:241,23'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
        - Branch String:   'smtp-command-parser.c:242,23'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:242,26'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:245,27'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
        - Branch String:   'smtp-command-parser.c:242,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:245,27'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:280,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:245,27'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:245,16'
              BranchSideFuncs:
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:246,31'
              BranchSideFuncs:
                - uni_utf8_char_bytes
                - i_stream_get_max_buffer_size
                - buffer_append
                - buffer_create_dynamic
        - Branch String:   'smtp-command-parser.c:252,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:253,8'
              BranchSideFuncs:
                - buffer_append
                - buffer_create_dynamic
            - BranchSide:      'smtp-command-parser.c:270,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:253,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:254,17'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:262,8'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'smtp-command-parser.c:254,17'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:254,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:255,10'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
        - Branch String:   'smtp-command-parser.c:256,16'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:256,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:256,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
        - Branch String:   'smtp-command-parser.c:257,16'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:257,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:257,14'
              BranchSideFuncs:
                - buffer_create_dynamic
                - buffer_append
        - Branch String:   'smtp-command-parser.c:262,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:263,5'
              BranchSideFuncs:
                - buffer_append
            - BranchSide:      'smtp-command-parser.c:264,18'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'smtp-command-parser.c:281,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:282,3'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:286,7'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:282,27'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:282,33'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:282,3'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:282,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:283,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:284,2'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:286,29'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:286,32'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
            - BranchSide:      'smtp-command-parser.c:293,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:286,49'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:286,53'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:293,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:286,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:288,4'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:293,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:293,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:294,3'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
            - BranchSide:      'smtp-command-parser.c:295,6'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:295,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:297,45'
              BranchSideFuncs:
                - i_strdup_until
            - BranchSide:      'smtp-command-parser.c:300,17'
              BranchSideFuncs:
                - buffer_append
                - buffer_free_without_data
      Callsites:
        - Src:             'smtp-command-parser.c:198,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:200,3'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:219,10'
          Dst:             uni_utf8_get_char_n
        - Src:             'smtp-command-parser.c:225,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:230,20'
          Dst:             smtp_char_is_textstr
        - Src:             'smtp-command-parser.c:235,3'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:246,10'
          Dst:             uni_utf8_char_bytes
        - Src:             'smtp-command-parser.c:247,22'
          Dst:             i_stream_get_max_buffer_size
        - Src:             'smtp-command-parser.c:259,27'
          Dst:             buffer_create_dynamic
        - Src:             'smtp-command-parser.c:264,4'
          Dst:             buffer_append
        - Src:             'smtp-command-parser.c:287,3'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:297,30'
          Dst:             i_strdup_until
        - Src:             'smtp-command-parser.c:300,3'
          Dst:             buffer_append
        - Src:             'smtp-command-parser.c:303,4'
          Dst:             buffer_free_without_data
    - functionName:    smtp_command_parser_error
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - code
        - format
      BBCount:         5
      ICount:          53
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup_vprintf
        - p_free_internal
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-command-parser.c:66,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:70,18'
          Dst:             i_strdup_vprintf
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    _chr_sanitize
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - c
      BBCount:         13
      ICount:          70
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:154,16'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:154,19'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'smtp-command-parser.c:156,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'smtp-command-parser.c:154,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:155,34'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'smtp-command-parser.c:156,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'smtp-command-parser.c:156,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:157,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:158,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'smtp-command-parser.c:158,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:159,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:160,37'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'smtp-command-parser.c:155,10'
          Dst:             t_strdup_printf
        - Src:             'smtp-command-parser.c:160,9'
          Dst:             t_strdup_printf
    - functionName:    smtp_command_parse_identifier
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         18
      ICount:          143
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __ctype_b_loc
        - i_panic
        - i_strdup_until
        - smtp_command_parser_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:170,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:170,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:171,2'
              BranchSideFuncs:
                - i_strdup_until
                - smtp_command_parser_error
                - __ctype_b_loc
        - Branch String:   'smtp-command-parser.c:171,25'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:171,28'
              BranchSideFuncs:
                - __ctype_b_loc
                - i_strdup_until
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:171,2'
              BranchSideFuncs:
                - i_strdup_until
                - smtp_command_parser_error
                - __ctype_b_loc
        - Branch String:   'smtp-command-parser.c:171,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:172,4'
              BranchSideFuncs:
                - i_strdup_until
                - smtp_command_parser_error
                - __ctype_b_loc
            - BranchSide:      'smtp-command-parser.c:173,7'
              BranchSideFuncs:
                - i_strdup_until
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:173,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:175,4'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:179,23'
              BranchSideFuncs:
                - i_strdup_until
        - Branch String:   'smtp-command-parser.c:180,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:181,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:182,42'
              BranchSideFuncs:
                - i_strdup_until
      Callsites:
        - Src:             'smtp-command-parser.c:170,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:171,28'
          Dst:             __ctype_b_loc
        - Src:             'smtp-command-parser.c:174,3'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:182,27'
          Dst:             i_strdup_until
    - functionName:    smtp_command_parser_restart
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
        - p_free_internal
        - smtp_command_parser_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-command-parser.c:133,2'
          Dst:             smtp_command_parser_clear
        - Src:             'smtp-command-parser.c:135,2'
          Dst:             buffer_free
        - Src:             'smtp-command-parser.c:136,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:137,2'
          Dst:             p_free_internal
    - functionName:    smtp_command_parser_clear
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_clear_safe
        - safe_memset
        - strlen
      functionUses:    4
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:104,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:104,6'
              BranchSideFuncs:
                - strlen
                - safe_memset
                - buffer_clear_safe
            - BranchSide:      'smtp-command-parser.c:105,7'
              BranchSideFuncs:
                - strlen
                - safe_memset
                - buffer_clear_safe
        - Branch String:   'smtp-command-parser.c:105,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:106,22'
              BranchSideFuncs:
                - buffer_clear_safe
                - strlen
                - safe_memset
            - BranchSide:      'smtp-command-parser.c:107,7'
              BranchSideFuncs:
                - strlen
                - safe_memset
        - Branch String:   'smtp-command-parser.c:107,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:108,16'
              BranchSideFuncs:
                - strlen
                - safe_memset
            - BranchSide:      'smtp-command-parser.c:111,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-command-parser.c:106,4'
          Dst:             buffer_clear_safe
        - Src:             'smtp-command-parser.c:109,9'
          Dst:             strlen
        - Src:             'smtp-command-parser.c:108,4'
          Dst:             safe_memset
    - functionName:    smtp_command_parse_line
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         61
      ICount:          422
      EdgeCount:       77
      CyclomaticComplexity: 18
      functionsReached:
        - _chr_sanitize
        - i_unreached
        - smtp_command_parse_identifier
        - smtp_command_parse_parameters
        - smtp_command_parser_error
        - smtp_command_parser_restart
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:323,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:325,32'
              BranchSideFuncs:
                - smtp_command_parser_restart
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:340,40'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:348,9'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:370,40'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:378,9'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:395,9'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:410,4'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:419,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-command-parser.c:326,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:328,5'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:331,5'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:334,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:335,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:336,8'
              BranchSideFuncs:
                - smtp_command_parse_identifier
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:336,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:336,16'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:337,5'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:341,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:342,12'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:343,4'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:344,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:344,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:345,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:348,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:349,5'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:352,16'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:352,15'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:353,5'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:356,16'
              BranchSideFuncs:
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:366,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:366,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:367,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:371,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:372,12'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:373,4'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:374,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:374,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:375,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:378,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:379,5'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:380,16'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:380,15'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:0,0'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:381,31'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:391,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:391,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:392,5'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:395,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:396,31'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:405,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:410,37'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:410,4'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:411,12'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:410,4'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:412,5'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
            - BranchSide:      'smtp-command-parser.c:413,8'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
        - Branch String:   'smtp-command-parser.c:413,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:414,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:415,4'
              BranchSideFuncs:
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_parameters
                - _chr_sanitize.1643
                - smtp_command_parser_error
                - smtp_command_parse_identifier
                - smtp_command_parser_restart
                - i_unreached
      Callsites:
        - Src:             'smtp-command-parser.c:325,4'
          Dst:             smtp_command_parser_restart
        - Src:             'smtp-command-parser.c:340,10'
          Dst:             smtp_command_parse_identifier
        - Src:             'smtp-command-parser.c:360,6'
          Dst:             _chr_sanitize
        - Src:             'smtp-command-parser.c:357,5'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:370,10'
          Dst:             smtp_command_parse_parameters
        - Src:             'smtp-command-parser.c:384,6'
          Dst:             _chr_sanitize
        - Src:             'smtp-command-parser.c:381,5'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:402,6'
          Dst:             _chr_sanitize
        - Src:             'smtp-command-parser.c:396,5'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:419,4'
          Dst:             i_unreached
    - functionName:    smtp_command_parse_auth_response
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - line_r
        - error_code_r
        - error_r
      BBCount:         29
      ICount:          201
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - p_free_internal
        - smtp_command_parse
        - smtp_command_parse_finish_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:603,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:603,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:603,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:603,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:603,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:603,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:603,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:603,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:606,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:616,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:617,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:624,27'
              BranchSideFuncs:
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:617,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:618,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:621,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:625,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:626,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:634,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-command-parser.c:626,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:627,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:631,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:634,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:634,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:635,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-command-parser.c:603,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:611,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:615,8'
          Dst:             smtp_command_parse_finish_data
        - Src:             'smtp-command-parser.c:624,8'
          Dst:             smtp_command_parse
        - Src:             'smtp-command-parser.c:634,2'
          Dst:             i_panic
    - functionName:    smtp_command_parse_finish_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         20
      ICount:          131
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - i_stream_get_disconnect_reason
        - i_stream_read_data
        - i_stream_skip
        - i_stream_unref
        - smtp_command_parser_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:479,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:480,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:481,6'
              BranchSideFuncs:
                - i_stream_read_data
                - i_stream_unref
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - i_stream_skip
                - i_stream_unref
        - Branch String:   'smtp-command-parser.c:481,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:482,19'
              BranchSideFuncs:
                - i_stream_unref
            - BranchSide:      'smtp-command-parser.c:486,2'
              BranchSideFuncs:
                - i_stream_read_data
                - i_stream_unref
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - i_stream_skip
        - Branch String:   'smtp-command-parser.c:486,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:487,17'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read_data
                - i_stream_unref
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:488,6'
              BranchSideFuncs:
                - i_stream_unref
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:488,15'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:488,18'
              BranchSideFuncs:
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:489,11'
              BranchSideFuncs:
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:488,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:489,11'
              BranchSideFuncs:
                - smtp_command_parser_error
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:504,18'
              BranchSideFuncs:
                - i_stream_unref
        - Branch String:   'smtp-command-parser.c:489,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:491,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:494,5'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:499,5'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
      Callsites:
        - Src:             'smtp-command-parser.c:482,3'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:486,16'
          Dst:             i_stream_read_data
        - Src:             'smtp-command-parser.c:487,3'
          Dst:             i_stream_skip
        - Src:             'smtp-command-parser.c:493,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:500,11'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-command-parser.c:498,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:504,2'
          Dst:             i_stream_unref
    - functionName:    smtp_command_parse
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         26
      ICount:          167
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - i_stream_get_data_size
        - i_stream_get_disconnect_reason
        - i_stream_read_data
        - i_stream_skip
        - smtp_command_parse_line
        - smtp_command_parser_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:432,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:434,17'
              BranchSideFuncs:
                - smtp_command_parse_line
                - i_stream_skip
                - i_stream_get_data_size
                - i_stream_read_data
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:443,2'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:439,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:440,11'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:441,38'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_read_data
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
                - i_panic
                - smtp_command_parse_line
                - i_stream_skip
        - Branch String:   'smtp-command-parser.c:443,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:443,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:445,6'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
        - Branch String:   'smtp-command-parser.c:445,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:446,3'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
                - i_panic
            - BranchSide:      'smtp-command-parser.c:460,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:446,3'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:446,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:447,7'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:447,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:448,8'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:456,5'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_command_parser_error
        - Branch String:   'smtp-command-parser.c:448,8'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:450,9'
              BranchSideFuncs:
                - smtp_command_parser_error
            - BranchSide:      'smtp-command-parser.c:452,5'
              BranchSideFuncs:
                - smtp_command_parser_error
      Callsites:
        - Src:             'smtp-command-parser.c:432,16'
          Dst:             i_stream_read_data
        - Src:             'smtp-command-parser.c:437,9'
          Dst:             smtp_command_parse_line
        - Src:             'smtp-command-parser.c:438,3'
          Dst:             i_stream_skip
        - Src:             'smtp-command-parser.c:441,15'
          Dst:             i_stream_get_data_size
        - Src:             'smtp-command-parser.c:443,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:446,3'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:451,4'
          Dst:             smtp_command_parser_error
        - Src:             'smtp-command-parser.c:457,11'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-command-parser.c:455,4'
          Dst:             smtp_command_parser_error
    - functionName:    smtp_command_parse_data_with_dot
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         10
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_create_dot
        - i_stream_create_failure_at
        - i_stream_ref
        - i_stream_unref
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:579,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:579,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:581,29'
              BranchSideFuncs:
                - i_stream_create_dot
                - i_stream_ref
                - t_strdup_printf
                - i_stream_create_failure_at
                - i_stream_unref
        - Branch String:   'smtp-command-parser.c:583,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:585,4'
              BranchSideFuncs:
                - t_strdup_printf
                - i_stream_create_failure_at
                - i_stream_unref
                - i_stream_ref
            - BranchSide:      'smtp-command-parser.c:591,18'
              BranchSideFuncs:
                - i_stream_ref
      Callsites:
        - Src:             'smtp-command-parser.c:579,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:581,9'
          Dst:             i_stream_create_dot
        - Src:             'smtp-command-parser.c:586,4'
          Dst:             t_strdup_printf
        - Src:             'smtp-command-parser.c:584,18'
          Dst:             i_stream_create_failure_at
        - Src:             'smtp-command-parser.c:589,3'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:593,2'
          Dst:             i_stream_ref
    - functionName:    smtp_command_parse_data_with_size
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - parser
        - size
      BBCount:         10
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_create_error_str
        - i_stream_create_limit
        - i_stream_create_min_sized
        - i_stream_ref
        - i_stream_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:557,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:557,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:558,6'
              BranchSideFuncs:
                - i_stream_create_limit
                - i_stream_create_min_sized
                - i_stream_unref
                - i_stream_ref
                - i_stream_create_error_str
        - Branch String:   'smtp-command-parser.c:558,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:563,4'
              BranchSideFuncs:
                - i_stream_create_error_str
                - i_stream_ref
            - BranchSide:      'smtp-command-parser.c:567,26'
              BranchSideFuncs:
                - i_stream_create_limit
                - i_stream_create_min_sized
                - i_stream_unref
                - i_stream_ref
      Callsites:
        - Src:             'smtp-command-parser.c:557,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:560,18'
          Dst:             i_stream_create_error_str
        - Src:             'smtp-command-parser.c:567,4'
          Dst:             i_stream_create_limit
        - Src:             'smtp-command-parser.c:568,18'
          Dst:             i_stream_create_min_sized
        - Src:             'smtp-command-parser.c:569,3'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:571,2'
          Dst:             i_stream_ref
    - functionName:    smtp_command_parse_next
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - cmd_name_r
        - cmd_params_r
        - error_code_r
        - error_r
      BBCount:         32
      ICount:          216
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - p_free_internal
        - smtp_command_parse
        - smtp_command_parse_finish_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:515,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:515,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:515,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:515,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:515,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
            - BranchSide:      'smtp-command-parser.c:515,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
                - i_panic
        - Branch String:   'smtp-command-parser.c:515,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:515,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:518,2'
              BranchSideFuncs:
                - p_free_internal.1642
                - smtp_command_parse_finish_data
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:528,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:529,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:536,27'
              BranchSideFuncs:
                - smtp_command_parse
                - i_panic
        - Branch String:   'smtp-command-parser.c:529,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:530,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:533,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:537,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:538,7'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:546,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'smtp-command-parser.c:538,7'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:539,20'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:543,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:546,2'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:546,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-command-parser.c:547,16'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:548,19'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:548,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:549,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-command-parser.c:515,2'
          Dst:             i_panic
        - Src:             'smtp-command-parser.c:523,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:527,8'
          Dst:             smtp_command_parse_finish_data
        - Src:             'smtp-command-parser.c:536,8'
          Dst:             smtp_command_parse
        - Src:             'smtp-command-parser.c:546,2'
          Dst:             i_panic
    - functionName:    smtp_command_parser_pending_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_have_bytes_left
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:465,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:466,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:467,34'
              BranchSideFuncs:
                - i_stream_have_bytes_left
      Callsites:
        - Src:             'smtp-command-parser.c:467,9'
          Dst:             i_stream_have_bytes_left
    - functionName:    smtp_command_parser_set_stream
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - input
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_ref
        - i_stream_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:146,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:146,6'
              BranchSideFuncs:
                - i_stream_ref
            - BranchSide:      'smtp-command-parser.c:147,19'
              BranchSideFuncs:
                - i_stream_ref
      Callsites:
        - Src:             'smtp-command-parser.c:145,2'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:148,3'
          Dst:             i_stream_ref
    - functionName:    smtp_command_parser_deinit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _parser
      BBCount:         11
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
        - i_stream_unref
        - p_free_internal
        - smtp_command_parser_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-command-parser.c:119,2'
          Dst:             smtp_command_parser_clear
        - Src:             'smtp-command-parser.c:121,2'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:122,2'
          Dst:             buffer_free
        - Src:             'smtp-command-parser.c:123,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:124,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:125,2'
          Dst:             p_free_internal
        - Src:             'smtp-command-parser.c:126,2'
          Dst:             i_stream_unref
        - Src:             'smtp-command-parser.c:127,2'
          Dst:             p_free_internal
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_command_parser_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-command-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - limits
      BBCount:         15
      ICount:          103
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - i_stream_ref
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-command-parser.c:84,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:85,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:86,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:86,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:87,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:90,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:90,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:91,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:94,6'
              BranchSideFuncs: []
        - Branch String:   'smtp-command-parser.c:94,6'
          Branch Sides:
            - BranchSide:      'smtp-command-parser.c:94,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-command-parser.c:95,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-command-parser.c:80,11'
          Dst:             malloc_multiply_check
        - Src:             'smtp-command-parser.c:80,11'
          Dst:             p_malloc
        - Src:             'smtp-command-parser.c:82,2'
          Dst:             i_stream_ref
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    cmd_helo_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-helo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         15
      ICount:          133
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - i_strdup
        - p_free_internal
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_connection_reset_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-helo.c:19,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:19,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:20,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_connection_reset_state
                - p_free_internal.1717
                - i_strdup
        - Branch String:   'smtp-server-cmd-helo.c:20,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:22,3'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - p_free_internal.1717
                - i_strdup
            - BranchSide:      'smtp-server-cmd-helo.c:25,6'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - p_free_internal.1717
                - i_strdup
        - Branch String:   'smtp-server-cmd-helo.c:25,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:26,3'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - p_free_internal.1717
                - i_strdup
            - BranchSide:      'smtp-server-cmd-helo.c:29,37'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - p_free_internal.1717
                - i_strdup
      Callsites:
        - Src:             'smtp-server-cmd-helo.c:19,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-helo.c:19,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-helo.c:20,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-helo.c:29,2'
          Dst:             smtp_server_connection_reset_state
        - Src:             'smtp-server-cmd-helo.c:31,2'
          Dst:             p_free_internal
        - Src:             'smtp-server-cmd-helo.c:32,22'
          Dst:             i_strdup
    - functionName:    cmd_helo_next
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-helo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - null_strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-helo.c:44,61'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:45,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-helo.c:46,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-helo.c:44,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:44,6'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-helo.c:46,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-helo.c:44,6'
          Dst:             null_strcmp
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_cmd_ehlo_reply_default
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-helo.c'
      linkageType:     externalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_cmd_ehlo_reply_create
        - smtp_server_reply_submit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-cmd-helo.c:197,10'
          Dst:             smtp_server_cmd_ehlo_reply_create
        - Src:             'smtp-server-cmd-helo.c:198,2'
          Dst:             smtp_server_reply_submit
    - functionName:    smtp_server_cmd_ehlo_reply_create
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-helo.c'
      linkageType:     externalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         32
      ICount:          227
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - array_get_i
        - array_is_created_i
        - i_panic
        - smtp_server_reply_create_ehlo
        - smtp_server_reply_ehlo_add_params
        - strcasecmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-helo.c:163,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:164,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:167,2'
              BranchSideFuncs:
                - array_is_created_i.1731
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
                - array_get_i.1732
                - i_panic
        - Branch String:   'smtp-server-cmd-helo.c:164,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:164,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:165,10'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-helo.c:167,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:167,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:169,19'
              BranchSideFuncs:
                - array_is_created_i.1731
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
                - array_get_i.1732
        - Branch String:   'smtp-server-cmd-helo.c:170,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:171,16'
              BranchSideFuncs:
                - array_get_i.1732
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
            - BranchSide:      'smtp-server-cmd-helo.c:175,8'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
        - Branch String:   'smtp-server-cmd-helo.c:176,33'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:176,2'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
            - BranchSide:      'smtp-server-cmd-helo.c:176,36'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
        - Branch String:   'smtp-server-cmd-helo.c:176,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:177,7'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
            - BranchSide:      'smtp-server-cmd-helo.c:190,9'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-helo.c:177,31'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:178,8'
              BranchSideFuncs:
                - strcasecmp
                - smtp_server_reply_ehlo_add_params
            - BranchSide:      'smtp-server-cmd-helo.c:185,5'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
        - Branch String:   'smtp-server-cmd-helo.c:178,30'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:179,33'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
            - BranchSide:      'smtp-server-cmd-helo.c:181,18'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
        - Branch String:   'smtp-server-cmd-helo.c:177,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:181,18'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
            - BranchSide:      'smtp-server-cmd-helo.c:185,5'
              BranchSideFuncs:
                - smtp_server_reply_ehlo_add_params
                - strcasecmp
      Callsites:
        - Src:             'smtp-server-cmd-helo.c:161,10'
          Dst:             smtp_server_reply_create_ehlo
        - Src:             'smtp-server-cmd-helo.c:164,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-helo.c:167,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-helo.c:170,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-cmd-helo.c:171,16'
          Dst:             array_get_i
        - Src:             'smtp-server-cmd-helo.c:179,8'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-helo.c:184,4'
          Dst:             smtp_server_reply_ehlo_add_params
    - functionName:    smtp_server_cmd_helo
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-helo.c'
      linkageType:     externalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_cmd_helo_run
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-cmd-helo.c:127,2'
          Dst:             smtp_server_cmd_helo_run
    - functionName:    smtp_server_cmd_ehlo
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-helo.c'
      linkageType:     externalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_cmd_helo_run
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-cmd-helo.c:120,2'
          Dst:             smtp_server_cmd_helo_run
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:253,13'
          Dst:             array_count_i
    - functionName:    smtp_server_cmd_helo_run
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-helo.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - cmd
        - params
        - old_smtp
      BBCount:         38
      ICount:          313
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - cmd_helo_completed
        - cmd_helo_next
        - i_panic
        - malloc_multiply_check
        - null_strcmp
        - p_malloc
        - p_strdup
        - smtp_helo_domain_parse
        - smtp_server_cmd_ehlo_reply_default
        - smtp_server_command_add_hook
        - smtp_server_command_is_replied
        - smtp_server_command_pipeline_block
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_set_state
        - smtp_server_reply
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-helo.c:57,43'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:57,46'
              BranchSideFuncs:
                - smtp_helo_domain_parse
                - smtp_server_command_pipeline_block
                - malloc_multiply_check.1721
                - p_malloc.1723
                - p_strdup
                - null_strcmp
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_connection_set_state
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-helo.c:57,7'
              BranchSideFuncs:
                - smtp_helo_domain_parse
                - smtp_server_command_pipeline_block
                - malloc_multiply_check.1721
                - p_malloc.1723
                - p_strdup
                - null_strcmp
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_connection_set_state
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-helo.c:63,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:64,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-helo.c:67,31'
              BranchSideFuncs:
                - smtp_helo_domain_parse
                - smtp_server_command_pipeline_block
                - malloc_multiply_check.1721
                - p_malloc.1723
                - p_strdup
                - null_strcmp
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_connection_set_state
        - Branch String:   'smtp-server-cmd-helo.c:70,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:71,36'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - malloc_multiply_check.1721
                - p_malloc.1723
                - p_strdup
                - null_strcmp
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:75,14'
              BranchSideFuncs:
                - malloc_multiply_check.1721
                - p_malloc.1723
                - p_strdup
                - null_strcmp
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-helo.c:82,50'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:83,6'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:84,3'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-helo.c:82,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:84,3'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:86,6'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-helo.c:86,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:87,25'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:89,2'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-helo.c:97,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:97,27'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:109,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-helo.c:97,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:99,9'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:109,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-helo.c:100,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:101,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:107,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_ehlo_reply_default
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-helo.c:101,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:101,4'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:101,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-helo.c:101,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:101,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-helo.c:104,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-helo.c:109,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-helo.c:111,38'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-helo.c:113,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-helo.c:64,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-helo.c:67,8'
          Dst:             smtp_helo_domain_parse
        - Src:             'smtp-server-cmd-helo.c:69,2'
          Dst:             smtp_server_command_pipeline_block
        - Src:             'smtp-server-cmd-helo.c:71,3'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-helo.c:75,14'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-cmd-helo.c:75,14'
          Dst:             p_malloc
        - Src:             'smtp-server-cmd-helo.c:76,27'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-helo.c:82,6'
          Dst:             null_strcmp
        - Src:             'smtp-server-cmd-helo.c:89,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-helo.c:89,2'
          Dst:             cmd_helo_next
        - Src:             'smtp-server-cmd-helo.c:92,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-helo.c:92,2'
          Dst:             cmd_helo_completed
        - Src:             'smtp-server-cmd-helo.c:96,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-helo.c:101,4'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-helo.c:101,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-helo.c:104,4'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-helo.c:109,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-helo.c:111,3'
          Dst:             smtp_server_cmd_ehlo_reply_default
        - Src:             'smtp-server-cmd-helo.c:113,2'
          Dst:             smtp_server_command_unref
    - functionName:    cmd_starttls_start
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-starttls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         29
      ICount:          174
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - smtp_server_connection_clear
        - smtp_server_connection_close
        - smtp_server_connection_input_unlock
        - smtp_server_connection_ref
        - smtp_server_connection_set_ssl_streams
        - smtp_server_connection_ssl_init
        - smtp_server_connection_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-starttls.c:19,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:19,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_connection_ssl_init
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
                - smtp_server_connection_close
                - smtp_server_connection_ref
                - smtp_server_connection_unref
                - smtp_server_connection_set_ssl_streams
            - BranchSide:      'smtp-server-cmd-starttls.c:19,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_connection_ssl_init
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
                - smtp_server_connection_close
                - smtp_server_connection_ref
                - smtp_server_connection_unref
                - smtp_server_connection_set_ssl_streams
        - Branch String:   'smtp-server-cmd-starttls.c:21,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:21,27'
              BranchSideFuncs:
                - smtp_server_connection_ssl_init
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
                - smtp_server_connection_close
                - smtp_server_connection_ref
                - smtp_server_connection_unref
                - smtp_server_connection_set_ssl_streams
            - BranchSide:      'smtp-server-cmd-starttls.c:34,45'
              BranchSideFuncs:
                - smtp_server_connection_ssl_init
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
                - smtp_server_connection_close
        - Branch String:   'smtp-server-cmd-starttls.c:21,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:22,45'
              BranchSideFuncs:
                - smtp_server_connection_ref
                - smtp_server_connection_unref
                - smtp_server_connection_set_ssl_streams
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:34,45'
              BranchSideFuncs:
                - smtp_server_connection_ssl_init
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
                - smtp_server_connection_close
        - Branch String:   'smtp-server-cmd-starttls.c:30,48'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:30,51'
              BranchSideFuncs:
                - smtp_server_connection_set_ssl_streams
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:31,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-starttls.c:30,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:31,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-starttls.c:33,42'
              BranchSideFuncs:
                - smtp_server_connection_set_ssl_streams
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:34,13'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:0,0'
              BranchSideFuncs:
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-cmd-starttls.c:35,3'
              BranchSideFuncs:
                - smtp_server_connection_close
        - Branch String:   'smtp-server-cmd-starttls.c:44,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:44,2'
              BranchSideFuncs:
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:44,2'
              BranchSideFuncs:
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:44,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:44,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:55,31'
              BranchSideFuncs:
                - smtp_server_connection_clear
                - smtp_server_connection_input_unlock
      Callsites:
        - Src:             'smtp-server-cmd-starttls.c:19,2'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-starttls.c:19,2'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-starttls.c:19,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-starttls.c:27,3'
          Dst:             smtp_server_connection_ref
        - Src:             'smtp-server-cmd-starttls.c:30,8'
          Dst:             smtp_server_connection_unref
        - Src:             'smtp-server-cmd-starttls.c:33,3'
          Dst:             smtp_server_connection_set_ssl_streams
        - Src:             'smtp-server-cmd-starttls.c:34,13'
          Dst:             smtp_server_connection_ssl_init
        - Src:             'smtp-server-cmd-starttls.c:35,3'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-cmd-starttls.c:44,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-starttls.c:55,2'
          Dst:             smtp_server_connection_clear
        - Src:             'smtp-server-cmd-starttls.c:56,2'
          Dst:             smtp_server_connection_input_unlock
    - functionName:    cmd_starttls_output
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-starttls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - cmd_starttls_start
        - o_stream_unset_flush_callback
        - smtp_server_connection_flush
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-starttls.c:65,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:66,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-starttls.c:68,6'
              BranchSideFuncs:
                - o_stream_unset_flush_callback
                - cmd_starttls_start
        - Branch String:   'smtp-server-cmd-starttls.c:68,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:69,33'
              BranchSideFuncs:
                - o_stream_unset_flush_callback
                - cmd_starttls_start
            - BranchSide:      'smtp-server-cmd-starttls.c:73,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-starttls.c:70,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:71,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-starttls.c:72,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-starttls.c:65,11'
          Dst:             smtp_server_connection_flush
        - Src:             'smtp-server-cmd-starttls.c:69,3'
          Dst:             o_stream_unset_flush_callback
        - Src:             'smtp-server-cmd-starttls.c:70,7'
          Dst:             cmd_starttls_start
    - functionName:    cmd_starttls_destroy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-starttls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - context
      BBCount:         22
      ICount:          134
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - cmd_starttls_output
        - cmd_starttls_start
        - i_panic
        - o_stream_set_flush_callback
        - o_stream_set_flush_pending
        - o_stream_uncork
        - smtp_server_command_replied_success
        - smtp_server_command_reply_status_equals
        - smtp_server_connection_flush
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-starttls.c:83,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:84,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-starttls.c:86,42'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_reply_status_equals
                - o_stream_uncork
                - smtp_server_connection_flush
                - cmd_starttls_start
                - o_stream_set_flush_callback
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:86,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:86,6'
              BranchSideFuncs:
                - smtp_server_command_reply_status_equals
                - o_stream_uncork
                - smtp_server_connection_flush
                - cmd_starttls_start
                - o_stream_set_flush_callback
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:88,3'
              BranchSideFuncs:
                - smtp_server_command_reply_status_equals
                - o_stream_uncork
                - smtp_server_connection_flush
                - cmd_starttls_start
                - o_stream_set_flush_callback
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:88,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:88,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:91,19'
              BranchSideFuncs:
                - o_stream_uncork
                - smtp_server_connection_flush
                - cmd_starttls_start
                - o_stream_set_flush_callback
                - o_stream_set_flush_pending
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:94,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:95,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-starttls.c:96,14'
              BranchSideFuncs:
                - cmd_starttls_start
                - o_stream_set_flush_callback
                - o_stream_set_flush_pending
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:96,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:98,4'
              BranchSideFuncs:
                - o_stream_set_flush_callback
                - o_stream_set_flush_pending
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:104,23'
              BranchSideFuncs:
                - cmd_starttls_start
        - Branch String:   'smtp-server-cmd-starttls.c:98,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:98,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:99,4'
              BranchSideFuncs:
                - o_stream_set_flush_callback
                - o_stream_set_flush_pending
      Callsites:
        - Src:             'smtp-server-cmd-starttls.c:86,6'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-starttls.c:88,3'
          Dst:             smtp_server_command_reply_status_equals
        - Src:             'smtp-server-cmd-starttls.c:88,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-starttls.c:91,3'
          Dst:             o_stream_uncork
        - Src:             'smtp-server-cmd-starttls.c:94,12'
          Dst:             smtp_server_connection_flush
        - Src:             'smtp-server-cmd-starttls.c:98,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-starttls.c:99,4'
          Dst:             o_stream_set_flush_callback
        - Src:             'smtp-server-cmd-starttls.c:99,4'
          Dst:             cmd_starttls_output
        - Src:             'smtp-server-cmd-starttls.c:102,4'
          Dst:             o_stream_set_flush_pending
        - Src:             'smtp-server-cmd-starttls.c:104,4'
          Dst:             cmd_starttls_start
    - functionName:    cmd_starttls_next
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-starttls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - context
      BBCount:         29
      ICount:          163
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - cmd_starttls_destroy
        - i_panic
        - smtp_server_command_add_hook
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_set_state
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-starttls.c:121,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:121,2'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_add_hook
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:121,2'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_add_hook
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:121,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:121,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:124,35'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_add_hook
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:128,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:128,27'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:131,7'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:128,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:129,9'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:131,7'
              BranchSideFuncs:
                - smtp_server_command_add_hook
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:136,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:137,3'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:142,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-starttls.c:137,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:137,3'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:137,3'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-starttls.c:137,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:137,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:139,3'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-starttls.c:142,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:143,21'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-starttls.c:146,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-starttls.c:121,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-starttls.c:124,2'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-starttls.c:127,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-starttls.c:133,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-starttls.c:133,2'
          Dst:             cmd_starttls_destroy
        - Src:             'smtp-server-cmd-starttls.c:137,3'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-starttls.c:137,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-starttls.c:139,3'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-starttls.c:142,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-starttls.c:143,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-starttls.c:146,2'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_cmd_starttls
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-starttls.c'
      linkageType:     externalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         15
      ICount:          101
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - cmd_starttls_next
        - i_panic
        - smtp_server_command_add_hook
        - smtp_server_command_input_lock
        - smtp_server_connection_input_lock
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-starttls.c:156,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:157,3'
              BranchSideFuncs:
                - smtp_server_reply
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:161,14'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - smtp_server_connection_input_lock
                - smtp_server_command_add_hook
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-starttls.c:157,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:157,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-starttls.c:158,21'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-starttls.c:168,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-starttls.c:169,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-starttls.c:174,33'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - smtp_server_connection_input_lock
                - smtp_server_command_add_hook
      Callsites:
        - Src:             'smtp-server-cmd-starttls.c:157,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-starttls.c:158,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-starttls.c:162,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-starttls.c:169,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-starttls.c:174,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-starttls.c:175,2'
          Dst:             smtp_server_connection_input_lock
        - Src:             'smtp-server-cmd-starttls.c:177,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-starttls.c:177,2'
          Dst:             cmd_starttls_next
    - functionName:    cmd_auth_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         14
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_command_reply_status_equals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-auth.c:55,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:55,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:56,42'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_reply_status_equals
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:56,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:56,6'
              BranchSideFuncs:
                - smtp_server_command_reply_status_equals
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:58,3'
              BranchSideFuncs:
                - smtp_server_command_reply_status_equals
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:58,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:58,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:59,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-auth.c:55,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-auth.c:55,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-auth.c:56,6'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-auth.c:58,3'
          Dst:             smtp_server_command_reply_status_equals
        - Src:             'smtp-server-cmd-auth.c:58,3'
          Dst:             i_panic
    - functionName:    cmd_auth_start
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         23
      ICount:          135
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - cmd_auth_check_state
        - i_panic
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_set_state
        - smtp_server_connection_timeout_stop
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-auth.c:165,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:166,3'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:169,35'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:172,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:172,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:172,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:172,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:172,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:175,8'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:176,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:176,2'
              BranchSideFuncs:
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:176,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:176,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:176,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:178,6'
              BranchSideFuncs:
                - smtp_server_command_unref
                - smtp_server_connection_timeout_stop
        - Branch String:   'smtp-server-cmd-auth.c:178,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:179,39'
              BranchSideFuncs:
                - smtp_server_connection_timeout_stop
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-auth.c:181,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-auth.c:165,7'
          Dst:             cmd_auth_check_state
        - Src:             'smtp-server-cmd-auth.c:169,2'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-auth.c:171,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-auth.c:172,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-auth.c:176,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-auth.c:176,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-auth.c:179,3'
          Dst:             smtp_server_connection_timeout_stop
        - Src:             'smtp-server-cmd-auth.c:181,2'
          Dst:             smtp_server_command_unref
    - functionName:    cmd_auth_check_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_server_reply
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-auth.c:21,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:22,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-auth.c:31,6'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-auth.c:31,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:32,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-auth.c:36,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-auth.c:22,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-auth.c:32,3'
          Dst:             smtp_server_reply
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    cmd_auth_input
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         55
      ICount:          314
      EdgeCount:       65
      CyclomaticComplexity: 12
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - i_stream_get_disconnect_reason
        - i_unreached
        - smtp_command_parse_auth_response
        - smtp_command_parser_clear
        - smtp_server_command_input_lock
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_close
        - smtp_server_connection_input_halt
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-auth.c:75,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:76,7'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - smtp_server_connection_close
                - smtp_command_parser_clear
            - BranchSide:      'smtp-server-cmd-auth.c:112,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_command_ref
                - smtp_command_parser_clear
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - e_debug
        - Branch String:   'smtp-server-cmd-auth.c:76,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:77,30'
              BranchSideFuncs:
                - smtp_command_parser_clear
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-cmd-auth.c:80,7'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - e_debug
                - i_stream_get_disconnect_reason
                - smtp_server_connection_close
        - Branch String:   'smtp-server-cmd-auth.c:80,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:82,36'
              BranchSideFuncs:
                - i_stream_get_disconnect_reason
                - smtp_server_connection_close
            - BranchSide:      'smtp-server-cmd-auth.c:86,7'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - event_want_level
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - e_debug
        - Branch String:   'smtp-server-cmd-auth.c:86,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:87,4'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_reply
                - smtp_server_connection_input_halt
                - smtp_server_reply
                - i_unreached
                - e_debug
            - BranchSide:      'smtp-server-cmd-auth.c:107,7'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-cmd-auth.c:87,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:87,4'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_input_lock
                - smtp_server_reply
                - smtp_server_connection_input_halt
                - smtp_server_reply
                - i_unreached
            - BranchSide:      'smtp-server-cmd-auth.c:87,4'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_reply
                - smtp_server_connection_input_halt
                - smtp_server_reply
                - i_unreached
        - Branch String:   'smtp-server-cmd-auth.c:91,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:93,5'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-cmd-auth.c:96,23'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-cmd-auth.c:100,23'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-cmd-auth.c:104,5'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-cmd-auth.c:107,26'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:107,29'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-cmd-auth.c:108,38'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
        - Branch String:   'smtp-server-cmd-auth.c:107,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:108,38'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
            - BranchSide:      'smtp-server-cmd-auth.c:109,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-auth.c:112,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:112,2'
              BranchSideFuncs:
                - e_debug
                - smtp_server_command_input_lock
                - smtp_server_command_ref
                - smtp_command_parser_clear
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:112,2'
              BranchSideFuncs:
                - event_send_abort
                - smtp_server_command_input_lock
                - smtp_server_command_ref
                - smtp_command_parser_clear
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:118,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:118,2'
              BranchSideFuncs:
                - smtp_command_parser_clear
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:118,2'
              BranchSideFuncs:
                - smtp_command_parser_clear
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:118,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:118,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:120,8'
              BranchSideFuncs:
                - smtp_command_parser_clear
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:123,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:125,3'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:129,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_reply
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-auth.c:125,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:125,3'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:125,3'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:125,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:125,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:126,3'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-auth.c:129,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:131,21'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-auth.c:133,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-auth.c:73,8'
          Dst:             smtp_command_parse_auth_response
        - Src:             'smtp-server-cmd-auth.c:77,4'
          Dst:             smtp_command_parser_clear
        - Src:             'smtp-server-cmd-auth.c:82,5'
          Dst:             i_stream_get_disconnect_reason
        - Src:             'smtp-server-cmd-auth.c:81,4'
          Dst:             smtp_server_connection_close
        - Src:             'smtp-server-cmd-auth.c:87,4'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-auth.c:87,4'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-auth.c:87,4'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-auth.c:90,4'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-auth.c:96,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-auth.c:100,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-auth.c:104,5'
          Dst:             i_unreached
        - Src:             'smtp-server-cmd-auth.c:108,4'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-cmd-auth.c:112,2'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-auth.c:112,2'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-auth.c:112,2'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-auth.c:114,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-auth.c:117,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-auth.c:118,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-auth.c:122,2'
          Dst:             smtp_command_parser_clear
        - Src:             'smtp-server-cmd-auth.c:125,3'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-auth.c:125,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-auth.c:126,3'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-auth.c:129,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-auth.c:131,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-auth.c:134,2'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_cmd_auth
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-auth.c'
      linkageType:     externalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         19
      ICount:          156
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - cmd_auth_check_state
        - cmd_auth_completed
        - cmd_auth_start
        - malloc_multiply_check
        - p_malloc
        - p_strdup
        - smtp_server_command_add_hook
        - smtp_server_command_input_lock
        - smtp_server_reply
        - t_strsplit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-auth.c:195,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:196,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-auth.c:210,20'
              BranchSideFuncs:
                - t_strsplit
                - cmd_auth_check_state
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-auth.c:212,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:213,21'
              BranchSideFuncs:
                - smtp_server_reply
                - cmd_auth_check_state
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
            - BranchSide:      'smtp-server-cmd-auth.c:217,15'
              BranchSideFuncs:
                - cmd_auth_check_state
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-auth.c:220,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:221,23'
              BranchSideFuncs:
                - smtp_server_reply
                - cmd_auth_check_state
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
            - BranchSide:      'smtp-server-cmd-auth.c:225,24'
              BranchSideFuncs:
                - cmd_auth_check_state
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
        - Branch String:   'smtp-server-cmd-auth.c:229,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:230,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-auth.c:233,28'
              BranchSideFuncs:
                - cmd_auth_check_state
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
        - Branch String:   'smtp-server-cmd-auth.c:233,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:234,3'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
            - BranchSide:      'smtp-server-cmd-auth.c:236,33'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - malloc_multiply_check.1810
                - p_malloc.1812
                - p_strdup
                - p_strdup
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
      Callsites:
        - Src:             'smtp-server-cmd-auth.c:196,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-auth.c:210,9'
          Dst:             t_strsplit
        - Src:             'smtp-server-cmd-auth.c:213,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-auth.c:221,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-auth.c:233,7'
          Dst:             cmd_auth_check_state
        - Src:             'smtp-server-cmd-auth.c:236,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-auth.c:238,14'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-cmd-auth.c:238,14'
          Dst:             p_malloc
        - Src:             'smtp-server-cmd-auth.c:239,25'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-auth.c:240,32'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-auth.c:242,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-auth.c:242,2'
          Dst:             cmd_auth_start
        - Src:             'smtp-server-cmd-auth.c:244,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-auth.c:244,2'
          Dst:             cmd_auth_completed
    - functionName:    smtp_server_cmd_auth_send_challenge
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-auth.c'
      linkageType:     externalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - challenge
      BBCount:         10
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - cmd_auth_input
        - i_panic
        - smtp_server_command_input_capture
        - smtp_server_connection_reply_immediate
        - smtp_server_connection_timeout_reset
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-auth.c:143,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:143,2'
              BranchSideFuncs:
                - smtp_server_connection_reply_immediate
                - smtp_server_connection_timeout_reset
                - smtp_server_command_input_capture
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:143,2'
              BranchSideFuncs:
                - smtp_server_connection_reply_immediate
                - smtp_server_connection_timeout_reset
                - smtp_server_command_input_capture
                - i_panic
        - Branch String:   'smtp-server-cmd-auth.c:143,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:143,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-auth.c:143,2'
              BranchSideFuncs:
                - smtp_server_connection_reply_immediate
                - smtp_server_connection_timeout_reset
                - smtp_server_command_input_capture
      Callsites:
        - Src:             'smtp-server-cmd-auth.c:143,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-auth.c:146,2'
          Dst:             smtp_server_connection_reply_immediate
        - Src:             'smtp-server-cmd-auth.c:147,2'
          Dst:             smtp_server_connection_timeout_reset
        - Src:             'smtp-server-cmd-auth.c:150,2'
          Dst:             smtp_server_command_input_capture
        - Src:             'smtp-server-cmd-auth.c:150,2'
          Dst:             cmd_auth_input
    - functionName:    smtp_server_cmd_auth_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-auth.c'
      linkageType:     externalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - username
        - success_msg
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_strdup
        - smtp_server_reply
      functionUses:    0
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-auth.c:45,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-auth.c:45,4'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-auth.c:45,41'
              BranchSideFuncs:
                - smtp_server_reply
      Callsites:
        - Src:             'smtp-server-cmd-auth.c:42,24'
          Dst:             i_strdup
        - Src:             'smtp-server-cmd-auth.c:44,2'
          Dst:             smtp_server_reply
    - functionName:    smtp_address_isnull
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-address.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './smtp-address.h:203,26'
          Branch Sides:
            - BranchSide:      './smtp-address.h:203,26'
              BranchSideFuncs: []
            - BranchSide:      './smtp-address.h:203,29'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_server_cmd_mail_reply_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-mail.c'
      linkageType:     externalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-mail.c:212,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:212,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:212,2'
              BranchSideFuncs:
                - smtp_server_reply
      Callsites:
        - Src:             'smtp-server-cmd-mail.c:212,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-mail.c:214,2'
          Dst:             smtp_server_reply
    - functionName:    smtp_server_cmd_mail
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-mail.c'
      linkageType:     externalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         101
      ICount:          588
      EdgeCount:       131
      CyclomaticComplexity: 32
      functionsReached:
        - array_idx_i
        - array_is_created_i
        - cmd_mail_check_state
        - cmd_mail_completed
        - cmd_mail_recheck
        - e_debug
        - event_reason_end
        - event_send_abort
        - event_want_level
        - i_panic
        - i_unreached
        - malloc_multiply_check
        - p_malloc
        - pool_datastack_create
        - smtp_address_clone
        - smtp_address_encode
        - smtp_address_is_broken
        - smtp_address_parse_path_full
        - smtp_params_mail_parse
        - smtp_server_cmd_mail_reply_success
        - smtp_server_command_add_hook
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_reason_begin
        - smtp_server_connection_set_state
        - smtp_server_reply
        - str_begins_builtin_success
        - str_begins_icase
        - strncasecmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-mail.c:92,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:93,3'
              BranchSideFuncs:
                - str_begins_icase
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success
            - BranchSide:      'smtp-server-cmd-mail.c:96,6'
              BranchSideFuncs:
                - str_begins_icase
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success
        - Branch String:   'smtp-server-cmd-mail.c:96,21'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:96,6'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:97,21'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:96,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:96,25'
              BranchSideFuncs:
                - strncasecmp
                - str_begins_builtin_success
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:96,25'
              BranchSideFuncs:
                - str_begins_icase
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:96,25'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:97,21'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:100,6'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:96,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:96,25'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:96,25'
              BranchSideFuncs:
                - str_begins_builtin_success
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:96,25'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:97,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:100,6'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:96,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:97,21'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:100,6'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:100,23'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:100,26'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:102,14'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:100,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:102,2'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:102,14'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:102,13'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:104,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:107,21'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:104,25'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:104,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:104,29'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:104,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:105,10'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:106,2'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:115,22'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:116,7'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:118,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:115,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:117,20'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:118,6'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:118,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:119,20'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:123,37'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
                - smtp_address_is_broken
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:126,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:126,41'
              BranchSideFuncs:
                - smtp_address_is_broken
                - smtp_server_reply
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:131,7'
              BranchSideFuncs:
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:126,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:127,21'
              BranchSideFuncs:
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:131,7'
              BranchSideFuncs:
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:131,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:132,9'
              BranchSideFuncs:
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:133,12'
              BranchSideFuncs:
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:133,11'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:0,0'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:135,4'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:139,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:140,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - e_debug
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:145,14'
              BranchSideFuncs:
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
        - Branch String:   'smtp-server-cmd-mail.c:140,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:140,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:141,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
                - e_debug
        - Branch String:   'smtp-server-cmd-mail.c:141,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:141,3'
              BranchSideFuncs:
                - e_debug
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
            - BranchSide:      'smtp-server-cmd-mail.c:141,3'
              BranchSideFuncs:
                - event_send_abort
                - malloc_multiply_check.1877
                - p_malloc.1878
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
        - Branch String:   'smtp-server-cmd-mail.c:147,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:148,3'
              BranchSideFuncs:
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
            - BranchSide:      'smtp-server-cmd-mail.c:151,6'
              BranchSideFuncs:
                - array_is_created_i.1879
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1880
        - Branch String:   'smtp-server-cmd-mail.c:151,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:152,22'
              BranchSideFuncs:
                - array_idx_i.1880
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
            - BranchSide:      'smtp-server-cmd-mail.c:153,29'
              BranchSideFuncs:
                - smtp_params_mail_parse
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
        - Branch String:   'smtp-server-cmd-mail.c:153,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:156,11'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
            - BranchSide:      'smtp-server-cmd-mail.c:169,7'
              BranchSideFuncs:
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:156,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:158,22'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:161,22'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:164,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-cmd-mail.c:169,41'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:169,44'
              BranchSideFuncs:
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:176,39'
              BranchSideFuncs:
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-mail.c:169,70'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:170,6'
              BranchSideFuncs:
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:176,39'
              BranchSideFuncs:
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-mail.c:169,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:171,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:176,39'
              BranchSideFuncs:
                - smtp_address_clone
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_address_encode
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-mail.c:189,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:189,27'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:203,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-mail.c:189,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:192,40'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:203,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-mail.c:195,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:196,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:202,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_mail_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-mail.c:196,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:196,4'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:196,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-mail.c:196,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:196,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:199,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-mail.c:203,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:205,38'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-mail.c:207,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-mail.c:92,7'
          Dst:             cmd_mail_check_state
        - Src:             'smtp-server-cmd-mail.c:96,25'
          Dst:             str_begins_icase
        - Src:             'smtp-server-cmd-mail.c:96,25'
          Dst:             strncasecmp
        - Src:             'smtp-server-cmd-mail.c:96,25'
          Dst:             str_begins_builtin_success
        - Src:             'smtp-server-cmd-mail.c:97,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-mail.c:107,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-mail.c:123,37'
          Dst:             pool_datastack_create
        - Src:             'smtp-server-cmd-mail.c:123,8'
          Dst:             smtp_address_parse_path_full
        - Src:             'smtp-server-cmd-mail.c:126,18'
          Dst:             smtp_address_is_broken
        - Src:             'smtp-server-cmd-mail.c:127,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-mail.c:134,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-mail.c:140,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-mail.c:141,3'
          Dst:             event_want_level
        - Src:             'smtp-server-cmd-mail.c:141,3'
          Dst:             e_debug
        - Src:             'smtp-server-cmd-mail.c:141,3'
          Dst:             event_send_abort
        - Src:             'smtp-server-cmd-mail.c:145,14'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-cmd-mail.c:145,14'
          Dst:             p_malloc
        - Src:             'smtp-server-cmd-mail.c:151,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-cmd-mail.c:152,22'
          Dst:             array_idx_i
        - Src:             'smtp-server-cmd-mail.c:153,6'
          Dst:             smtp_params_mail_parse
        - Src:             'smtp-server-cmd-mail.c:158,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-mail.c:161,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-mail.c:164,4'
          Dst:             i_unreached
        - Src:             'smtp-server-cmd-mail.c:171,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-mail.c:176,20'
          Dst:             smtp_address_clone
        - Src:             'smtp-server-cmd-mail.c:179,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-mail.c:179,2'
          Dst:             cmd_mail_recheck
        - Src:             'smtp-server-cmd-mail.c:181,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-mail.c:181,2'
          Dst:             cmd_mail_completed
        - Src:             'smtp-server-cmd-mail.c:185,7'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-cmd-mail.c:184,2'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-mail.c:188,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-mail.c:192,4'
          Dst:             smtp_server_connection_reason_begin
        - Src:             'smtp-server-cmd-mail.c:194,3'
          Dst:             event_reason_end
        - Src:             'smtp-server-cmd-mail.c:196,4'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-mail.c:196,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-mail.c:199,4'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-mail.c:203,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-mail.c:205,3'
          Dst:             smtp_server_cmd_mail_reply_success
        - Src:             'smtp-server-cmd-mail.c:207,2'
          Dst:             smtp_server_command_unref
    - functionName:    cmd_mail_check_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-mail.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         13
      ICount:          72
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_command_reply_is_forwarded
        - smtp_server_reply
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-mail.c:19,46'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:20,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_reply_is_forwarded
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:24,6'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:20,52'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:21,46'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:24,6'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:19,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:22,3'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:24,6'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-mail.c:24,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:25,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-mail.c:28,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-mail.c:19,6'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-mail.c:20,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-mail.c:21,7'
          Dst:             smtp_server_command_reply_is_forwarded
        - Src:             'smtp-server-cmd-mail.c:25,3'
          Dst:             smtp_server_reply
    - functionName:    strncasecmp
      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:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_address_is_broken
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-address.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - address
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - smtp_address_isnull
      functionUses:    1
      BranchProfiles:
        - Branch String:   './smtp-address.h:209,26'
          Branch Sides:
            - BranchSide:      './smtp-address.h:209,26'
              BranchSideFuncs:
                - smtp_address_isnull.1861
            - BranchSide:      './smtp-address.h:210,23'
              BranchSideFuncs:
                - smtp_address_isnull.1861
        - Branch String:   './smtp-address.h:210,32'
          Branch Sides:
            - BranchSide:      './smtp-address.h:210,32'
              BranchSideFuncs: []
            - BranchSide:      './smtp-address.h:211,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             './smtp-address.h:210,3'
          Dst:             smtp_address_isnull
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    cmd_mail_recheck
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-mail.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmd_mail_check_state
        - smtp_address_encode
        - smtp_server_connection_set_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-mail.c:63,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:64,3'
              BranchSideFuncs:
                - smtp_address_encode
                - smtp_server_connection_set_state
            - BranchSide:      'smtp-server-cmd-mail.c:67,35'
              BranchSideFuncs:
                - smtp_address_encode
                - smtp_server_connection_set_state
      Callsites:
        - Src:             'smtp-server-cmd-mail.c:63,7'
          Dst:             cmd_mail_check_state
        - Src:             'smtp-server-cmd-mail.c:68,7'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-cmd-mail.c:67,2'
          Dst:             smtp_server_connection_set_state
    - functionName:    cmd_mail_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-mail.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         21
      ICount:          122
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_transaction_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-mail.c:38,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:38,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:39,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_replied_success
                - smtp_server_command_replied_success
                - smtp_server_transaction_create
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-mail.c:41,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:41,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:42,2'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_replied_success
                - smtp_server_transaction_create
                - i_panic
        - Branch String:   'smtp-server-cmd-mail.c:42,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:42,2'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_transaction_create
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:42,2'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_replied_success
                - smtp_server_transaction_create
                - i_panic
        - Branch String:   'smtp-server-cmd-mail.c:42,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:42,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-mail.c:45,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_transaction_create
        - Branch String:   'smtp-server-cmd-mail.c:45,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-mail.c:47,3'
              BranchSideFuncs:
                - smtp_server_transaction_create
            - BranchSide:      'smtp-server-cmd-mail.c:51,53'
              BranchSideFuncs:
                - smtp_server_transaction_create
      Callsites:
        - Src:             'smtp-server-cmd-mail.c:38,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-mail.c:41,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-mail.c:41,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-mail.c:42,2'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-mail.c:42,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-mail.c:45,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-mail.c:51,22'
          Dst:             smtp_server_transaction_create
    - functionName:    smtp_server_command_is_rcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rcpt.c'
      linkageType:     externalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_cmd_rcpt
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rcpt.c'
      linkageType:     externalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         83
      ICount:          500
      EdgeCount:       107
      CyclomaticComplexity: 26
      functionsReached:
        - array_idx_i
        - array_is_created_i
        - cmd_rcpt_check_state
        - cmd_rcpt_completed
        - cmd_rcpt_destroy
        - cmd_rcpt_recheck
        - event_reason_end
        - i_panic
        - i_unreached
        - malloc_multiply_check
        - p_malloc
        - pool_datastack_create
        - smtp_address_parse_path_full
        - smtp_params_rcpt_parse
        - smtp_server_cmd_rcpt_reply_success
        - smtp_server_command_add_hook
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_reason_begin
        - smtp_server_recipient_create
        - smtp_server_reply
        - str_begins_builtin_success
        - str_begins_icase
        - strcasecmp
        - strncasecmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rcpt.c:126,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:127,3'
              BranchSideFuncs:
                - str_begins_icase
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.1930
            - BranchSide:      'smtp-server-cmd-rcpt.c:130,6'
              BranchSideFuncs:
                - str_begins_icase
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.1930
        - Branch String:   'smtp-server-cmd-rcpt.c:130,21'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:130,6'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:131,21'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:130,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:130,25'
              BranchSideFuncs:
                - strncasecmp
                - str_begins_builtin_success.1930
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:130,25'
              BranchSideFuncs:
                - str_begins_icase
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:130,25'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:131,21'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:135,6'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:130,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:130,25'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:130,25'
              BranchSideFuncs:
                - str_begins_builtin_success.1930
                - smtp_server_reply
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:130,25'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:131,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:135,6'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:130,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:131,21'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:135,6'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:135,23'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:135,26'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:137,14'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:135,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:137,2'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:137,14'
              BranchSideFuncs:
                - smtp_server_reply
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:137,13'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:139,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:142,21'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:139,25'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:139,3'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:139,29'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:139,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:140,10'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:141,2'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:148,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:149,20'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:150,35'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_address_parse_path_full
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:150,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:153,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:157,7'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:157,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:158,9'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:159,12'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:159,11'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:0,0'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:160,21'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:164,27'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:164,31'
              BranchSideFuncs:
                - strcasecmp
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:172,20'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
        - Branch String:   'smtp-server-cmd-rcpt.c:164,62'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:165,14'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
            - BranchSide:      'smtp-server-cmd-rcpt.c:172,20'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
        - Branch String:   'smtp-server-cmd-rcpt.c:164,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:166,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:172,20'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
        - Branch String:   'smtp-server-cmd-rcpt.c:173,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:174,21'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
            - BranchSide:      'smtp-server-cmd-rcpt.c:175,6'
              BranchSideFuncs:
                - array_is_created_i.1938
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
                - array_idx_i.1939
        - Branch String:   'smtp-server-cmd-rcpt.c:175,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:176,22'
              BranchSideFuncs:
                - array_idx_i.1939
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
            - BranchSide:      'smtp-server-cmd-rcpt.c:177,29'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_params_rcpt_parse
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
        - Branch String:   'smtp-server-cmd-rcpt.c:177,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:180,11'
              BranchSideFuncs:
                - smtp_server_reply
                - smtp_server_reply
                - i_unreached
            - BranchSide:      'smtp-server-cmd-rcpt.c:195,38'
              BranchSideFuncs:
                - smtp_server_recipient_create
                - malloc_multiply_check.1943
                - p_malloc.1944
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-rcpt.c:180,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:182,22'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:186,22'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:190,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'smtp-server-cmd-rcpt.c:211,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:211,2'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:211,2'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-rcpt.c:211,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:211,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:214,39'
              BranchSideFuncs:
                - smtp_server_connection_reason_begin
                - event_reason_end
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-rcpt.c:217,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:218,3'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:223,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_rcpt_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-rcpt.c:218,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:218,3'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:218,3'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-rcpt.c:218,3'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:218,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:220,3'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-rcpt.c:223,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:225,38'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-rcpt.c:227,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-rcpt.c:126,7'
          Dst:             cmd_rcpt_check_state
        - Src:             'smtp-server-cmd-rcpt.c:130,25'
          Dst:             str_begins_icase
        - Src:             'smtp-server-cmd-rcpt.c:130,25'
          Dst:             strncasecmp
        - Src:             'smtp-server-cmd-rcpt.c:130,25'
          Dst:             str_begins_builtin_success
        - Src:             'smtp-server-cmd-rcpt.c:131,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:142,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:150,35'
          Dst:             pool_datastack_create
        - Src:             'smtp-server-cmd-rcpt.c:150,6'
          Dst:             smtp_address_parse_path_full
        - Src:             'smtp-server-cmd-rcpt.c:153,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:160,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:165,3'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-rcpt.c:166,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:175,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-cmd-rcpt.c:176,22'
          Dst:             array_idx_i
        - Src:             'smtp-server-cmd-rcpt.c:177,29'
          Dst:             pool_datastack_create
        - Src:             'smtp-server-cmd-rcpt.c:177,6'
          Dst:             smtp_params_rcpt_parse
        - Src:             'smtp-server-cmd-rcpt.c:182,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:186,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:190,4'
          Dst:             i_unreached
        - Src:             'smtp-server-cmd-rcpt.c:195,9'
          Dst:             smtp_server_recipient_create
        - Src:             'smtp-server-cmd-rcpt.c:197,14'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-cmd-rcpt.c:197,14'
          Dst:             p_malloc
        - Src:             'smtp-server-cmd-rcpt.c:201,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-rcpt.c:201,2'
          Dst:             cmd_rcpt_recheck
        - Src:             'smtp-server-cmd-rcpt.c:203,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-rcpt.c:203,2'
          Dst:             cmd_rcpt_completed
        - Src:             'smtp-server-cmd-rcpt.c:205,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-rcpt.c:205,2'
          Dst:             cmd_rcpt_destroy
        - Src:             'smtp-server-cmd-rcpt.c:210,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-rcpt.c:211,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rcpt.c:214,3'
          Dst:             smtp_server_connection_reason_begin
        - Src:             'smtp-server-cmd-rcpt.c:216,2'
          Dst:             event_reason_end
        - Src:             'smtp-server-cmd-rcpt.c:218,3'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-rcpt.c:218,3'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rcpt.c:220,3'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-rcpt.c:223,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-rcpt.c:225,3'
          Dst:             smtp_server_cmd_rcpt_reply_success
        - Src:             'smtp-server-cmd-rcpt.c:227,2'
          Dst:             smtp_server_command_unref
    - functionName:    cmd_rcpt_check_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rcpt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - cmd
        - next_to_reply
      BBCount:         26
      ICount:          138
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_command_reply_is_forwarded
        - smtp_server_reply
        - smtp_server_transaction_rcpt_count
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rcpt.c:33,46'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:34,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_reply_is_forwarded
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:38,6'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:34,52'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:35,46'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:38,6'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:33,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:36,3'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:38,6'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:38,20'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:39,7'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:44,6'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:39,42'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:39,45'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:40,21'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:38,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:40,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:44,6'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-rcpt.c:44,35'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:44,38'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:52,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-rcpt.c:44,52'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:45,38'
              BranchSideFuncs:
                - smtp_server_transaction_rcpt_count
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:52,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-rcpt.c:44,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:47,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rcpt.c:52,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-rcpt.c:33,6'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-rcpt.c:34,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-rcpt.c:35,7'
          Dst:             smtp_server_command_reply_is_forwarded
        - Src:             'smtp-server-cmd-rcpt.c:40,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rcpt.c:45,3'
          Dst:             smtp_server_transaction_rcpt_count
        - Src:             'smtp-server-cmd-rcpt.c:47,3'
          Dst:             smtp_server_reply
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    cmd_rcpt_recheck
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rcpt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmd_rcpt_check_state
        - smtp_address_encode
        - smtp_server_connection_set_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rcpt.c:93,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:94,3'
              BranchSideFuncs:
                - smtp_address_encode
                - smtp_server_connection_set_state
            - BranchSide:      'smtp-server-cmd-rcpt.c:97,35'
              BranchSideFuncs:
                - smtp_address_encode
                - smtp_server_connection_set_state
      Callsites:
        - Src:             'smtp-server-cmd-rcpt.c:93,7'
          Dst:             cmd_rcpt_check_state
        - Src:             'smtp-server-cmd-rcpt.c:98,7'
          Dst:             smtp_address_encode
        - Src:             'smtp-server-cmd-rcpt.c:97,2'
          Dst:             smtp_server_connection_set_state
    - functionName:    cmd_rcpt_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rcpt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         21
      ICount:          137
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_command_get_reply
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_recipient_approved
        - smtp_server_recipient_denied
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rcpt.c:63,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:63,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:64,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_replied_success
                - smtp_server_command_replied_success
                - smtp_server_command_get_reply
                - smtp_server_recipient_denied
                - smtp_server_recipient_approved
                - i_panic
                - i_panic
        - Branch String:   'smtp-server-cmd-rcpt.c:66,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:66,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:67,2'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_replied_success
                - smtp_server_command_get_reply
                - smtp_server_recipient_denied
                - smtp_server_recipient_approved
                - i_panic
        - Branch String:   'smtp-server-cmd-rcpt.c:67,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:67,2'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_get_reply
                - smtp_server_recipient_denied
                - smtp_server_recipient_approved
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:67,2'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_replied_success
                - smtp_server_command_get_reply
                - smtp_server_recipient_denied
                - smtp_server_recipient_approved
                - i_panic
        - Branch String:   'smtp-server-cmd-rcpt.c:67,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:67,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:70,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_command_get_reply
                - smtp_server_recipient_denied
                - smtp_server_recipient_approved
        - Branch String:   'smtp-server-cmd-rcpt.c:70,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:72,3'
              BranchSideFuncs:
                - smtp_server_recipient_approved
            - BranchSide:      'smtp-server-cmd-rcpt.c:79,2'
              BranchSideFuncs:
                - smtp_server_recipient_approved
      Callsites:
        - Src:             'smtp-server-cmd-rcpt.c:63,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rcpt.c:66,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-rcpt.c:66,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rcpt.c:67,2'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-rcpt.c:67,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rcpt.c:70,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-rcpt.c:74,10'
          Dst:             smtp_server_command_get_reply
        - Src:             'smtp-server-cmd-rcpt.c:73,3'
          Dst:             smtp_server_recipient_denied
        - Src:             'smtp-server-cmd-rcpt.c:80,8'
          Dst:             smtp_server_recipient_approved
    - functionName:    cmd_rcpt_destroy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rcpt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - data
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smtp_server_recipient_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-server-cmd-rcpt.c:23,2'
          Dst:             smtp_server_recipient_destroy
    - functionName:    smtp_server_cmd_rcpt_reply_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rcpt.c'
      linkageType:     externalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         7
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_command_is_rcpt
        - smtp_server_recipient_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rcpt.c:239,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rcpt.c:239,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rcpt.c:239,2'
              BranchSideFuncs:
                - smtp_server_recipient_reply
      Callsites:
        - Src:             'smtp-server-cmd-rcpt.c:239,2'
          Dst:             smtp_server_command_is_rcpt
        - Src:             'smtp-server-cmd-rcpt.c:239,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rcpt.c:241,2'
          Dst:             smtp_server_recipient_reply
    - functionName:    smtp_server_cmd_rset_reply_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rset.c'
      linkageType:     externalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rset.c:67,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:67,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rset.c:67,2'
              BranchSideFuncs:
                - smtp_server_reply
      Callsites:
        - Src:             'smtp-server-cmd-rset.c:67,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rset.c:69,2'
          Dst:             smtp_server_reply
    - functionName:    smtp_server_cmd_rset
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rset.c'
      linkageType:     externalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         23
      ICount:          138
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - cmd_rset_completed
        - i_panic
        - smtp_server_cmd_rset_reply_success
        - smtp_server_command_add_hook
        - smtp_server_command_is_replied
        - smtp_server_command_pipeline_block
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_reply
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rset.c:36,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:37,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-rset.c:42,37'
              BranchSideFuncs:
                - smtp_server_command_pipeline_block
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_rset_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-rset.c:47,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:47,27'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_rset_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-rset.c:58,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_rset_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-rset.c:47,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:49,12'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_rset_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-rset.c:58,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_rset_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-rset.c:49,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:50,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-rset.c:56,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_rset_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-rset.c:50,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:50,4'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-rset.c:50,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-rset.c:50,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:50,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rset.c:53,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-rset.c:58,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:60,38'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-rset.c:62,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-rset.c:37,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-rset.c:42,2'
          Dst:             smtp_server_command_pipeline_block
        - Src:             'smtp-server-cmd-rset.c:43,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-rset.c:43,2'
          Dst:             cmd_rset_completed
        - Src:             'smtp-server-cmd-rset.c:46,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-rset.c:50,4'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-rset.c:50,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rset.c:53,4'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-rset.c:58,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-rset.c:60,3'
          Dst:             smtp_server_cmd_rset_reply_success
        - Src:             'smtp-server-cmd-rset.c:62,2'
          Dst:             smtp_server_command_unref
    - functionName:    cmd_rset_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-rset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - context
      BBCount:         13
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_connection_reset_state
        - smtp_server_transaction_reset
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-rset.c:15,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:15,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-rset.c:16,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_connection_reset_state
                - smtp_server_transaction_reset
        - Branch String:   'smtp-server-cmd-rset.c:16,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:18,3'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - smtp_server_transaction_reset
            - BranchSide:      'smtp-server-cmd-rset.c:22,6'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - smtp_server_transaction_reset
        - Branch String:   'smtp-server-cmd-rset.c:22,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-rset.c:23,33'
              BranchSideFuncs:
                - smtp_server_transaction_reset
                - smtp_server_connection_reset_state
            - BranchSide:      'smtp-server-cmd-rset.c:24,37'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
      Callsites:
        - Src:             'smtp-server-cmd-rset.c:15,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-rset.c:15,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-rset.c:16,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-rset.c:23,3'
          Dst:             smtp_server_transaction_reset
        - Src:             'smtp-server-cmd-rset.c:24,2'
          Dst:             smtp_server_connection_reset_state
    - functionName:    smtp_server_cmd_noop_reply_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-noop.c'
      linkageType:     externalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-noop.c:49,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:49,8'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-noop.c:49,8'
              BranchSideFuncs:
                - smtp_server_reply
      Callsites:
        - Src:             'smtp-server-cmd-noop.c:49,8'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-noop.c:51,8'
          Dst:             smtp_server_reply
    - functionName:    smtp_server_cmd_noop
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-noop.c'
      linkageType:     externalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         23
      ICount:          143
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - smtp_server_cmd_noop_reply_success
        - smtp_server_command_input_lock
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_reply
        - smtp_string_parse
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-noop.c:21,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:22,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-noop.c:28,33'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_noop_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-noop.c:31,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:31,27'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_noop_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-noop.c:42,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_noop_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-noop.c:31,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:33,9'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_noop_reply_success
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-noop.c:42,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_noop_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-noop.c:34,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:35,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-noop.c:41,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_noop_reply_success
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-noop.c:35,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:35,4'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-noop.c:35,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-noop.c:35,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:35,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-noop.c:38,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-noop.c:42,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-noop.c:43,38'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-noop.c:44,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-noop.c:20,8'
          Dst:             smtp_string_parse
        - Src:             'smtp-server-cmd-noop.c:22,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-noop.c:28,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-noop.c:30,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-noop.c:35,4'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-noop.c:35,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-noop.c:38,4'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-noop.c:42,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-noop.c:43,3'
          Dst:             smtp_server_cmd_noop_reply_success
        - Src:             'smtp-server-cmd-noop.c:44,2'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_cmd_quit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-quit.c'
      linkageType:     externalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         23
      ICount:          136
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_input_halt
        - smtp_server_reply
        - smtp_server_reply_quit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-quit.c:18,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-quit.c:19,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-quit.c:24,36'
              BranchSideFuncs:
                - smtp_server_connection_input_halt
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_reply_quit
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-quit.c:27,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-quit.c:27,27'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_reply_quit
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-quit.c:37,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_reply_quit
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-quit.c:27,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-quit.c:29,14'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_reply_quit
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-quit.c:37,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_reply_quit
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-quit.c:29,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-quit.c:30,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-quit.c:36,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_reply_quit
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-quit.c:30,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-quit.c:30,4'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-quit.c:30,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-quit.c:30,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-quit.c:30,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-quit.c:33,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-quit.c:37,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-quit.c:39,26'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-quit.c:41,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-quit.c:19,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-quit.c:24,2'
          Dst:             smtp_server_connection_input_halt
        - Src:             'smtp-server-cmd-quit.c:26,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-quit.c:30,4'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-quit.c:30,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-quit.c:33,4'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-quit.c:37,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-quit.c:39,3'
          Dst:             smtp_server_reply_quit
        - Src:             'smtp-server-cmd-quit.c:41,2'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_server_cmd_vrfy_reply_default
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-vrfy.c'
      linkageType:     externalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-vrfy.c:70,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:70,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-vrfy.c:70,2'
              BranchSideFuncs:
                - smtp_server_reply
      Callsites:
        - Src:             'smtp-server-cmd-vrfy.c:70,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-vrfy.c:72,2'
          Dst:             smtp_server_reply
    - functionName:    smtp_server_cmd_vrfy
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-vrfy.c'
      linkageType:     externalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         26
      ICount:          153
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - smtp_server_cmd_vrfy_reply_default
        - smtp_server_command_is_replied
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_reply
        - smtp_string_parse
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-vrfy.c:21,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:22,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-vrfy.c:25,13'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_is_replied
                - smtp_server_cmd_vrfy_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-vrfy.c:31,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:31,27'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_vrfy_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-vrfy.c:63,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_vrfy_reply_default
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-vrfy.c:31,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:33,9'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_vrfy_reply_default
                - smtp_server_command_unref
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-vrfy.c:63,38'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_vrfy_reply_default
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-vrfy.c:34,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:35,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-vrfy.c:41,2'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_cmd_vrfy_reply_default
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-vrfy.c:35,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:35,4'
              BranchSideFuncs:
                - smtp_server_command_unref
                - i_panic
            - BranchSide:      'smtp-server-cmd-vrfy.c:35,4'
              BranchSideFuncs:
                - smtp_server_command_is_replied
                - smtp_server_command_unref
                - i_panic
        - Branch String:   'smtp-server-cmd-vrfy.c:35,4'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:35,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-vrfy.c:38,4'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-vrfy.c:63,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-vrfy.c:64,38'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-vrfy.c:65,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-vrfy.c:20,8'
          Dst:             smtp_string_parse
        - Src:             'smtp-server-cmd-vrfy.c:22,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-vrfy.c:26,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-vrfy.c:30,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-vrfy.c:35,4'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-vrfy.c:35,4'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-vrfy.c:38,4'
          Dst:             smtp_server_command_unref
        - Src:             'smtp-server-cmd-vrfy.c:63,7'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-vrfy.c:64,3'
          Dst:             smtp_server_cmd_vrfy_reply_default
        - Src:             'smtp-server-cmd-vrfy.c:65,2'
          Dst:             smtp_server_command_unref
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2068
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2068
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    cmd_xclient_completed
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-xclient.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - proxy_data
      BBCount:         10
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - smtp_server_command_is_replied
        - smtp_server_command_replied_success
        - smtp_server_connection_reset_state
        - smtp_server_connection_set_proxy_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-xclient.c:39,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:39,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'smtp-server-cmd-xclient.c:40,43'
              BranchSideFuncs:
                - smtp_server_command_replied_success
                - smtp_server_connection_reset_state
                - smtp_server_connection_set_proxy_data
        - Branch String:   'smtp-server-cmd-xclient.c:40,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:42,3'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - smtp_server_connection_set_proxy_data
            - BranchSide:      'smtp-server-cmd-xclient.c:46,37'
              BranchSideFuncs:
                - smtp_server_connection_reset_state
                - smtp_server_connection_set_proxy_data
      Callsites:
        - Src:             'smtp-server-cmd-xclient.c:39,2'
          Dst:             smtp_server_command_is_replied
        - Src:             'smtp-server-cmd-xclient.c:39,2'
          Dst:             i_panic
        - Src:             'smtp-server-cmd-xclient.c:40,7'
          Dst:             smtp_server_command_replied_success
        - Src:             'smtp-server-cmd-xclient.c:46,2'
          Dst:             smtp_server_connection_reset_state
        - Src:             'smtp-server-cmd-xclient.c:47,2'
          Dst:             smtp_server_connection_set_proxy_data
    - functionName:    cmd_xclient_recheck
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-xclient.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - proxy_data
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmd_xclient_check_state
        - smtp_server_connection_set_state
        - smtp_server_reply
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-xclient.c:58,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:59,3'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:60,35'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_reply
      Callsites:
        - Src:             'smtp-server-cmd-xclient.c:58,7'
          Dst:             cmd_xclient_check_state
        - Src:             'smtp-server-cmd-xclient.c:60,2'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-xclient.c:63,2'
          Dst:             smtp_server_reply
    - functionName:    cmd_xclient_check_state
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-xclient.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_server_reply
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-xclient.c:24,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:25,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:29,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-server-cmd-xclient.c:25,3'
          Dst:             smtp_server_reply
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:253,13'
          Dst:             array_count_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_server_cmd_xclient_extra_field
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-xclient.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - pool
        - param
        - fields
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
        - p_strdup
        - str_array_icase_find
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-xclient.c:75,43'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:76,28'
              BranchSideFuncs: []
            - BranchSide:      'smtp-server-cmd-xclient.c:77,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-server-cmd-xclient.c:75,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:77,3'
              BranchSideFuncs:
                - array_is_created_i.2078
                - array_create_i.2070
                - array_append_space_i.2069
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-cmd-xclient.c:79,7'
              BranchSideFuncs:
                - array_is_created_i.2078
                - array_create_i.2070
                - array_append_space_i.2069
                - p_strdup
                - p_strdup
        - Branch String:   'smtp-server-cmd-xclient.c:79,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:80,3'
              BranchSideFuncs:
                - array_append_space_i.2069
                - p_strdup
                - p_strdup
            - BranchSide:      'smtp-server-cmd-xclient.c:81,10'
              BranchSideFuncs:
                - array_append_space_i.2069
                - p_strdup
                - p_strdup
      Callsites:
        - Src:             'smtp-server-cmd-xclient.c:76,7'
          Dst:             str_array_icase_find
        - Src:             'smtp-server-cmd-xclient.c:79,7'
          Dst:             array_is_created_i
        - Src:             'smtp-server-cmd-xclient.c:80,3'
          Dst:             array_create_i
        - Src:             'smtp-server-cmd-xclient.c:81,10'
          Dst:             array_append_space_i
        - Src:             'smtp-server-cmd-xclient.c:82,16'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-xclient.c:83,17'
          Dst:             p_strdup
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    smtp_server_cmd_xclient
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-server-cmd-xclient.c'
      linkageType:     externalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cmd
        - params
      BBCount:         111
      ICount:          632
      EdgeCount:       153
      CyclomaticComplexity: 44
      functionsReached:
        - array_get_i
        - array_is_created_i
        - cmd_xclient_check_state
        - cmd_xclient_completed
        - cmd_xclient_recheck
        - connection_is_valid_dns_name
        - malloc_multiply_check
        - net_addr2ip
        - net_str2port
        - p_malloc
        - p_strdup
        - pool_datastack_create
        - smtp_helo_domain_parse
        - smtp_param_parse
        - smtp_server_cmd_xclient_extra_field
        - smtp_server_command_add_hook
        - smtp_server_command_input_lock
        - smtp_server_command_ref
        - smtp_server_command_unref
        - smtp_server_connection_is_trusted
        - smtp_server_connection_set_state
        - smtp_server_reply
        - smtp_xtext_parse
        - str_begins_builtin_success
        - str_begins_icase
        - str_to_uint
        - strcasecmp
        - strcmp
        - strncasecmp
        - t_str_ucase
        - t_strsplit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-server-cmd-xclient.c:101,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:102,21'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:108,31'
              BranchSideFuncs:
                - cmd_xclient_check_state
                - smtp_server_connection_is_trusted
                - smtp_server_reply
                - malloc_multiply_check.2080
                - p_malloc.2082
                - t_strsplit
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:108,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:109,3'
              BranchSideFuncs:
                - smtp_server_connection_is_trusted
                - smtp_server_reply
                - malloc_multiply_check.2080
                - p_malloc.2082
                - t_strsplit
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:112,41'
              BranchSideFuncs:
                - smtp_server_connection_is_trusted
                - smtp_server_reply
                - malloc_multiply_check.2080
                - p_malloc.2082
                - t_strsplit
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:112,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:113,21'
              BranchSideFuncs:
                - malloc_multiply_check.2080
                - p_malloc.2082
                - t_strsplit
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:118,15'
              BranchSideFuncs:
                - malloc_multiply_check.2080
                - p_malloc.2082
                - t_strsplit
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:121,2'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:125,24'
              BranchSideFuncs:
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:222,6'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
        - Branch String:   'smtp-server-cmd-xclient.c:125,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:127,22'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:132,37'
              BranchSideFuncs:
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:134,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:135,22'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:141,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
        - Branch String:   'smtp-server-cmd-xclient.c:141,7'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:142,9'
              BranchSideFuncs:
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
            - BranchSide:      'smtp-server-cmd-xclient.c:153,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
        - Branch String:   'smtp-server-cmd-xclient.c:143,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:144,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:145,8'
              BranchSideFuncs:
                - str_begins_icase
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
        - Branch String:   'smtp-server-cmd-xclient.c:145,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:145,8'
              BranchSideFuncs:
                - strncasecmp
                - str_begins_builtin_success.2079
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:145,8'
              BranchSideFuncs:
                - str_begins_icase
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:145,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:146,10'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:147,26'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:145,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:145,8'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:145,8'
              BranchSideFuncs:
                - str_begins_builtin_success.2079
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:145,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:146,10'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:147,26'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:145,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:146,10'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:147,26'
              BranchSideFuncs:
                - net_addr2ip
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:147,61'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:148,6'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:149,23'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:148,11'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:148,14'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:153,3'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:147,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:149,23'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:153,3'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:153,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:154,25'
              BranchSideFuncs:
                - strcasecmp
                - smtp_helo_domain_parse
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - p_strdup
            - BranchSide:      'smtp-server-cmd-xclient.c:160,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
        - Branch String:   'smtp-server-cmd-xclient.c:154,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:155,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:157,12'
              BranchSideFuncs:
                - smtp_helo_domain_parse
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - p_strdup
        - Branch String:   'smtp-server-cmd-xclient.c:156,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:159,15'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:160,3'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:160,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:161,25'
              BranchSideFuncs:
                - strcasecmp
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:164,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:161,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:162,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:163,33'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:164,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:165,25'
              BranchSideFuncs:
                - strcasecmp
                - net_str2port
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:172,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:165,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:166,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:167,27'
              BranchSideFuncs:
                - net_str2port
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:167,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:168,23'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:172,3'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:172,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:173,36'
              BranchSideFuncs:
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:185,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
        - Branch String:   'smtp-server-cmd-xclient.c:174,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:175,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:176,26'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - smtp_server_reply
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:176,13'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:177,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:178,26'
              BranchSideFuncs:
                - strcmp
                - smtp_server_reply
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:178,13'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:179,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:181,23'
              BranchSideFuncs:
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:185,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:186,25'
              BranchSideFuncs:
                - strcasecmp
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:189,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
        - Branch String:   'smtp-server-cmd-xclient.c:186,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:187,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:188,35'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:189,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:190,25'
              BranchSideFuncs:
                - strcasecmp
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:194,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
        - Branch String:   'smtp-server-cmd-xclient.c:190,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:191,5'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:193,14'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:194,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:195,44'
              BranchSideFuncs:
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:201,27'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:195,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:196,23'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:200,38'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:201,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:202,26'
              BranchSideFuncs:
                - str_to_uint
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:208,27'
              BranchSideFuncs:
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:202,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:204,23'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:208,3'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:208,14'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:209,26'
              BranchSideFuncs:
                - str_to_uint
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:217,40'
              BranchSideFuncs:
                - smtp_server_cmd_xclient_extra_field
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:209,8'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:211,23'
              BranchSideFuncs:
                - smtp_server_reply
            - BranchSide:      'smtp-server-cmd-xclient.c:215,4'
              BranchSideFuncs:
                - array_is_created_i.2078
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
                - array_get_i.2077
                - pool_datastack_create
                - smtp_param_parse
                - t_str_ucase
                - smtp_xtext_parse
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_cmd_xclient_extra_field
                - str_to_uint
                - smtp_server_reply
                - str_to_uint
                - smtp_server_reply
                - connection_is_valid_dns_name
                - smtp_server_reply
                - p_strdup
                - strcasecmp
                - p_strdup
                - strcasecmp
                - p_strdup
                - t_str_ucase
                - strcmp
                - strcmp
                - strcmp
                - smtp_server_reply
                - strcasecmp
                - net_str2port
                - smtp_server_reply
                - strcasecmp
                - p_strdup
                - strcasecmp
                - smtp_helo_domain_parse
                - p_strdup
                - strcasecmp
                - str_begins_icase
                - net_addr2ip
                - smtp_server_reply
                - strncasecmp
                - str_begins_builtin_success.2079
                - smtp_server_reply
                - smtp_server_reply
        - Branch String:   'smtp-server-cmd-xclient.c:222,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:223,30'
              BranchSideFuncs:
                - array_get_i.2077
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
            - BranchSide:      'smtp-server-cmd-xclient.c:227,33'
              BranchSideFuncs:
                - smtp_server_command_input_lock
                - smtp_server_command_add_hook
                - smtp_server_command_add_hook
                - smtp_server_command_ref
                - smtp_server_command_unref
                - smtp_server_connection_set_state
        - Branch String:   'smtp-server-cmd-xclient.c:234,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:236,4'
              BranchSideFuncs:
                - smtp_server_connection_set_state
                - smtp_server_command_ref
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-xclient.c:239,26'
              BranchSideFuncs:
                - smtp_server_command_ref
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-xclient.c:240,24'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:240,27'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-xclient.c:244,2'
              BranchSideFuncs:
                - smtp_server_command_unref
        - Branch String:   'smtp-server-cmd-xclient.c:240,6'
          Branch Sides:
            - BranchSide:      'smtp-server-cmd-xclient.c:242,3'
              BranchSideFuncs:
                - smtp_server_command_unref
            - BranchSide:      'smtp-server-cmd-xclient.c:244,2'
              BranchSideFuncs:
                - smtp_server_command_unref
      Callsites:
        - Src:             'smtp-server-cmd-xclient.c:102,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:108,7'
          Dst:             cmd_xclient_check_state
        - Src:             'smtp-server-cmd-xclient.c:112,7'
          Dst:             smtp_server_connection_is_trusted
        - Src:             'smtp-server-cmd-xclient.c:113,3'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:118,15'
          Dst:             malloc_multiply_check
        - Src:             'smtp-server-cmd-xclient.c:118,15'
          Dst:             p_malloc
        - Src:             'smtp-server-cmd-xclient.c:120,9'
          Dst:             t_strsplit
        - Src:             'smtp-server-cmd-xclient.c:125,24'
          Dst:             pool_datastack_create
        - Src:             'smtp-server-cmd-xclient.c:125,7'
          Dst:             smtp_param_parse
        - Src:             'smtp-server-cmd-xclient.c:127,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:132,19'
          Dst:             t_str_ucase
        - Src:             'smtp-server-cmd-xclient.c:134,7'
          Dst:             smtp_xtext_parse
        - Src:             'smtp-server-cmd-xclient.c:135,4'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:141,7'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:143,8'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-xclient.c:145,8'
          Dst:             str_begins_icase
        - Src:             'smtp-server-cmd-xclient.c:145,8'
          Dst:             strncasecmp
        - Src:             'smtp-server-cmd-xclient.c:145,8'
          Dst:             str_begins_builtin_success
        - Src:             'smtp-server-cmd-xclient.c:147,8'
          Dst:             net_addr2ip
        - Src:             'smtp-server-cmd-xclient.c:149,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:153,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:154,8'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-xclient.c:156,8'
          Dst:             smtp_helo_domain_parse
        - Src:             'smtp-server-cmd-xclient.c:159,6'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-xclient.c:160,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:161,8'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-xclient.c:163,24'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-xclient.c:164,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:165,8'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-xclient.c:167,8'
          Dst:             net_str2port
        - Src:             'smtp-server-cmd-xclient.c:168,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:172,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:173,18'
          Dst:             t_str_ucase
        - Src:             'smtp-server-cmd-xclient.c:174,8'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:176,13'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:178,13'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:181,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:185,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:186,8'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-xclient.c:188,26'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-xclient.c:189,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:190,8'
          Dst:             strcasecmp
        - Src:             'smtp-server-cmd-xclient.c:193,5'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-xclient.c:194,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:195,9'
          Dst:             connection_is_valid_dns_name
        - Src:             'smtp-server-cmd-xclient.c:196,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:200,29'
          Dst:             p_strdup
        - Src:             'smtp-server-cmd-xclient.c:201,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:202,8'
          Dst:             str_to_uint
        - Src:             'smtp-server-cmd-xclient.c:204,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:208,14'
          Dst:             strcmp
        - Src:             'smtp-server-cmd-xclient.c:209,8'
          Dst:             str_to_uint
        - Src:             'smtp-server-cmd-xclient.c:211,5'
          Dst:             smtp_server_reply
        - Src:             'smtp-server-cmd-xclient.c:217,4'
          Dst:             smtp_server_cmd_xclient_extra_field
        - Src:             'smtp-server-cmd-xclient.c:222,6'
          Dst:             array_is_created_i
        - Src:             'smtp-server-cmd-xclient.c:223,30'
          Dst:             array_get_i
        - Src:             'smtp-server-cmd-xclient.c:227,2'
          Dst:             smtp_server_command_input_lock
        - Src:             'smtp-server-cmd-xclient.c:229,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-xclient.c:229,2'
          Dst:             cmd_xclient_recheck
        - Src:             'smtp-server-cmd-xclient.c:231,2'
          Dst:             smtp_server_command_add_hook
        - Src:             'smtp-server-cmd-xclient.c:231,2'
          Dst:             cmd_xclient_completed
        - Src:             'smtp-server-cmd-xclient.c:235,3'
          Dst:             smtp_server_connection_set_state
        - Src:             'smtp-server-cmd-xclient.c:239,2'
          Dst:             smtp_server_command_ref
        - Src:             'smtp-server-cmd-xclient.c:244,2'
          Dst:             smtp_server_command_unref
    - functionName:    smtp_char_is_atext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_parser_parse_snum
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - literal
        - octet_r
      BBCount:         26
      ICount:          170
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - str_append_data
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-parser.c:280,25'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:280,29'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:281,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:280,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:281,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:282,2'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:283,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:284,8'
              BranchSideFuncs:
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:289,11'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:284,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:285,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:286,19'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:286,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:287,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:288,3'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:291,31'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:291,35'
              BranchSideFuncs:
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:291,2'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:291,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:283,7'
              BranchSideFuncs:
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:293,6'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:293,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:294,19'
              BranchSideFuncs:
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:295,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:294,3'
          Dst:             str_append_data
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    smtp_parse_xtext_hexdigit
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - digit
        - hexvalue
      BBCount:         22
      ICount:          123
      EdgeCount:       42
      CyclomaticComplexity: 22
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-parser.c:564,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:567,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:571,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:571,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:571,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:571,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:571,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:571,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:575,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    smtp_char_is_xtext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_parser_parse_xtext
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 582
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - out
      BBCount:         38
      ICount:          217
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - smtp_char_is_xtext
        - smtp_parse_xtext_hexdigit
        - str_append_c
        - str_append_data
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-parser.c:591,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:592,25'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:593,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:592,38'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:592,42'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_xtext.2162
            - BranchSide:      'smtp-parser.c:595,2'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_xtext.2162
        - Branch String:   'smtp-parser.c:591,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:593,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:595,2'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_xtext.2162
        - Branch String:   'smtp-parser.c:595,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:596,33'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_xtext.2162
            - BranchSide:      'smtp-parser.c:624,2'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:598,36'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:598,3'
              BranchSideFuncs:
                - smtp_char_is_xtext.2162
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:599,24'
              BranchSideFuncs:
                - smtp_char_is_xtext.2162
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:598,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:600,4'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_xtext.2162
            - BranchSide:      'smtp-parser.c:602,7'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - smtp_char_is_xtext.2162
                - str_append_c.2165
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:602,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:603,20'
              BranchSideFuncs:
                - str_append_data.2160
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - smtp_char_is_xtext.2162
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:605,7'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2160
                - smtp_char_is_xtext.2162
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:605,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:605,38'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:606,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:605,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:606,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:607,3'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2160
                - smtp_char_is_xtext.2162
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:610,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:611,4'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2160
                - smtp_char_is_xtext.2162
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:620,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:612,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:613,5'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2160
                - smtp_char_is_xtext.2162
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:618,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:614,9'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:615,6'
              BranchSideFuncs:
                - str_append_c.2165
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_data.2160
                - smtp_char_is_xtext.2162
            - BranchSide:      'smtp-parser.c:616,5'
              BranchSideFuncs:
                - smtp_parse_xtext_hexdigit
                - smtp_parse_xtext_hexdigit
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_xtext.2162
      Callsites:
        - Src:             'smtp-parser.c:592,5'
          Dst:             smtp_char_is_xtext
        - Src:             'smtp-parser.c:599,4'
          Dst:             smtp_char_is_xtext
        - Src:             'smtp-parser.c:603,4'
          Dst:             str_append_data
        - Src:             'smtp-parser.c:610,7'
          Dst:             smtp_parse_xtext_hexdigit
        - Src:             'smtp-parser.c:612,8'
          Dst:             smtp_parse_xtext_hexdigit
        - Src:             'smtp-parser.c:615,6'
          Dst:             str_append_c
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-smtp/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    smtp_parser_parse_string
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - value_r
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smtp_parser_parse_atom
        - smtp_parser_parse_quoted_string
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-parser.c:555,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:556,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:557,32'
              BranchSideFuncs:
                - smtp_parser_parse_atom
      Callsites:
        - Src:             'smtp-parser.c:555,11'
          Dst:             smtp_parser_parse_quoted_string
        - Src:             'smtp-parser.c:557,9'
          Dst:             smtp_parser_parse_atom
    - functionName:    smtp_parser_parse_quoted_string
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - value_r
      BBCount:         45
      ICount:          273
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - smtp_char_is_qpair
        - smtp_char_is_qtext
        - str_append_c
        - str_append_data
        - str_c
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-parser.c:469,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:469,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:470,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:469,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:470,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:471,2'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2174
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_qtext.2173
                - t_str_new
        - Branch String:   'smtp-parser.c:473,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:474,11'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - smtp_char_is_qpair.2174
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_qtext.2173
            - BranchSide:      'smtp-parser.c:477,2'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2174
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_qtext.2173
        - Branch String:   'smtp-parser.c:477,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:478,12'
              BranchSideFuncs:
                - smtp_char_is_qpair.2174
                - str_c
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_qtext.2173
            - BranchSide:      'smtp-parser.c:506,6'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:479,36'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:479,3'
              BranchSideFuncs:
                - smtp_char_is_qtext.2173
                - smtp_char_is_qpair.2174
                - str_c
                - str_append_c.2165
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:480,24'
              BranchSideFuncs:
                - smtp_char_is_qtext.2173
                - smtp_char_is_qpair.2174
                - str_c
                - str_append_c.2165
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:479,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:482,4'
              BranchSideFuncs:
                - smtp_char_is_qpair.2174
                - str_c
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_qtext.2173
            - BranchSide:      'smtp-parser.c:485,7'
              BranchSideFuncs:
                - smtp_char_is_qpair.2174
                - str_c
                - smtp_char_is_qtext.2173
                - str_append_c.2165
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:485,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:486,20'
              BranchSideFuncs:
                - str_append_data.2160
                - smtp_char_is_qpair.2174
                - str_c
                - smtp_char_is_qtext.2173
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:488,7'
              BranchSideFuncs:
                - smtp_char_is_qpair.2174
                - str_c
                - str_append_data.2160
                - smtp_char_is_qtext.2173
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:488,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:488,38'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:489,4'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:488,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:489,4'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:490,3'
              BranchSideFuncs:
                - smtp_char_is_qpair.2174
                - str_c
                - str_append_data.2160
                - smtp_char_is_qtext.2173
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:493,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:494,25'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:495,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:493,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:495,4'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2174
                - str_append_data.2160
                - smtp_char_is_qtext.2173
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:500,7'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2174
                - str_append_data.2160
                - smtp_char_is_qtext.2173
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:500,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:501,4'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - smtp_char_is_qpair.2174
                - str_append_data.2160
                - smtp_char_is_qtext.2173
            - BranchSide:      'smtp-parser.c:502,3'
              BranchSideFuncs:
                - str_c
                - smtp_char_is_qpair.2174
                - str_append_c.2165
                - str_append_data.2160
                - smtp_char_is_qtext.2173
        - Branch String:   'smtp-parser.c:506,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:507,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:510,7'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:510,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:511,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:514,2'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:515,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:516,20'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:517,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:474,11'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:480,4'
          Dst:             smtp_char_is_qtext
        - Src:             'smtp-parser.c:486,4'
          Dst:             str_append_data
        - Src:             'smtp-parser.c:494,5'
          Dst:             smtp_char_is_qpair
        - Src:             'smtp-parser.c:501,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:516,14'
          Dst:             str_c
    - functionName:    smtp_parser_parse_atom
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - value_r
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smtp_parser_skip_atom
        - t_strndup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-parser.c:540,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:541,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:543,6'
              BranchSideFuncs:
                - t_strndup
        - Branch String:   'smtp-parser.c:543,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:544,24'
              BranchSideFuncs:
                - t_strndup
            - BranchSide:      'smtp-parser.c:545,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:540,11'
          Dst:             smtp_parser_skip_atom
        - Src:             'smtp-parser.c:544,14'
          Dst:             t_strndup
    - functionName:    smtp_parser_skip_atom
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - smtp_char_is_atext
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-parser.c:525,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:525,57'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:526,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:525,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:526,3'
              BranchSideFuncs:
                - smtp_char_is_atext.2157
            - BranchSide:      'smtp-parser.c:527,2'
              BranchSideFuncs:
                - smtp_char_is_atext.2157
        - Branch String:   'smtp-parser.c:529,35'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:529,58'
              BranchSideFuncs:
                - smtp_char_is_atext.2157
            - BranchSide:      'smtp-parser.c:529,2'
              BranchSideFuncs:
                - smtp_char_is_atext.2157
        - Branch String:   'smtp-parser.c:529,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:530,3'
              BranchSideFuncs:
                - smtp_char_is_atext.2157
            - BranchSide:      'smtp-parser.c:531,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:525,37'
          Dst:             smtp_char_is_atext
        - Src:             'smtp-parser.c:529,38'
          Dst:             smtp_char_is_atext
    - functionName:    smtp_char_is_qtext
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_char_is_qpair
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_char_is_dcontent
      functionSourceFile: '/src/dovecot/src/lib-smtp/./smtp-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ch
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_parser_parse_ldh_str
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - out
      BBCount:         21
      ICount:          137
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
        - str_append_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-parser.c:183,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:184,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:190,6'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:184,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:185,13'
              BranchSideFuncs:
                - str_append_data.2160
                - __ctype_b_loc
            - BranchSide:      'smtp-parser.c:186,13'
              BranchSideFuncs:
                - str_append_data.2160
                - __ctype_b_loc
        - Branch String:   'smtp-parser.c:186,12'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:0,0'
              BranchSideFuncs:
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:187,4'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:190,28'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:190,31'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:191,17'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:190,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:191,17'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:195,16'
              BranchSideFuncs:
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:196,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:197,19'
              BranchSideFuncs:
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:198,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:184,7'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:197,3'
          Dst:             str_append_data
    - functionName:    smtp_parser_parse_ipv4_address
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - literal
        - ip4_r
      BBCount:         23
      ICount:          144
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - htonl
        - smtp_parser_parse_snum
        - str_append_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'smtp-parser.c:309,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:310,10'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:311,7'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:313,20'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:313,23'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:313,2'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:313,2'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:314,8'
              BranchSideFuncs:
                - smtp_parser_parse_snum
                - htonl
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:326,6'
              BranchSideFuncs:
                - htonl
        - Branch String:   'smtp-parser.c:314,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:315,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:317,7'
              BranchSideFuncs:
                - smtp_parser_parse_snum
                - htonl
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:317,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:318,4'
              BranchSideFuncs:
                - str_append_c.2165
                - smtp_parser_parse_snum
                - htonl
            - BranchSide:      'smtp-parser.c:319,3'
              BranchSideFuncs:
                - smtp_parser_parse_snum
                - htonl
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:321,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:322,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:323,9'
              BranchSideFuncs:
                - htonl
                - smtp_parser_parse_snum
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:326,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:327,25'
              BranchSideFuncs:
                - htonl
            - BranchSide:      'smtp-parser.c:328,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:309,13'
          Dst:             smtp_parser_parse_snum
        - Src:             'smtp-parser.c:318,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:321,7'
          Dst:             smtp_parser_parse_snum
        - Src:             'smtp-parser.c:327,19'
          Dst:             htonl
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smtp_parser_parse_address_literal
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - value_r
        - ip_r
      BBCount:         68
      ICount:          412
      EdgeCount:       92
      CyclomaticComplexity: 26
      functionsReached:
        - net_addr2ip
        - smtp_char_is_dcontent
        - smtp_parser_parse_ipv4_address
        - smtp_parser_parse_ldh_str
        - str_append_c
        - str_append_data
        - str_c
        - strcasecmp
        - t_str_new
        - t_strdup_printf
        - t_strndup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'smtp-parser.c:356,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:356,37'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:357,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:356,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:357,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:358,2'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
                - t_str_new
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:360,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:361,11'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:364,6'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:364,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:365,3'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:368,2'
              BranchSideFuncs:
                - smtp_parser_parse_ipv4_address
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:369,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:370,7'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
            - BranchSide:      'smtp-parser.c:385,7'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:370,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:371,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:374,7'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
        - Branch String:   'smtp-parser.c:374,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:375,4'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
            - BranchSide:      'smtp-parser.c:380,2'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
        - Branch String:   'smtp-parser.c:385,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:386,13'
              BranchSideFuncs:
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:388,13'
              BranchSideFuncs:
                - t_str_new
                - str_append_c.2165
                - smtp_parser_parse_ldh_str
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:391,54'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:392,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:393,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:392,31'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:392,35'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:393,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:391,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:393,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:396,24'
              BranchSideFuncs:
                - str_c
                - strcasecmp
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:396,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:397,9'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:398,12'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:398,12'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:0,0'
              BranchSideFuncs:
                - str_c
                - t_strdup_printf
            - BranchSide:      'smtp-parser.c:401,11'
              BranchSideFuncs:
                - str_c
                - t_strdup_printf
        - Branch String:   'smtp-parser.c:405,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:406,4'
              BranchSideFuncs:
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
            - BranchSide:      'smtp-parser.c:409,12'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
        - Branch String:   'smtp-parser.c:410,36'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:410,3'
              BranchSideFuncs:
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
            - BranchSide:      'smtp-parser.c:411,27'
              BranchSideFuncs:
                - smtp_char_is_dcontent
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:410,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:412,4'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
                - smtp_char_is_dcontent
            - BranchSide:      'smtp-parser.c:414,7'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:414,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:415,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:418,7'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
                - str_append_data.2160
        - Branch String:   'smtp-parser.c:418,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:419,20'
              BranchSideFuncs:
                - str_append_data.2160
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
            - BranchSide:      'smtp-parser.c:421,7'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
                - t_strndup
                - net_addr2ip
        - Branch String:   'smtp-parser.c:423,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:425,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:428,8'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
        - Branch String:   'smtp-parser.c:428,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:429,6'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
            - BranchSide:      'smtp-parser.c:430,3'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
        - Branch String:   'smtp-parser.c:434,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:435,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:437,14'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
        - Branch String:   'smtp-parser.c:443,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:444,3'
              BranchSideFuncs:
                - str_append_c.2165
                - str_c
            - BranchSide:      'smtp-parser.c:447,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:361,11'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:362,3'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:369,11'
          Dst:             smtp_parser_parse_ipv4_address
        - Src:             'smtp-parser.c:388,13'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:389,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:391,7'
          Dst:             smtp_parser_parse_ldh_str
        - Src:             'smtp-parser.c:396,18'
          Dst:             str_c
        - Src:             'smtp-parser.c:396,7'
          Dst:             strcasecmp
        - Src:             'smtp-parser.c:401,5'
          Dst:             str_c
        - Src:             'smtp-parser.c:399,20'
          Dst:             t_strdup_printf
        - Src:             'smtp-parser.c:406,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:411,4'
          Dst:             smtp_char_is_dcontent
        - Src:             'smtp-parser.c:419,4'
          Dst:             str_append_data
        - Src:             'smtp-parser.c:423,20'
          Dst:             t_strndup
        - Src:             'smtp-parser.c:423,8'
          Dst:             net_addr2ip
        - Src:             'smtp-parser.c:444,3'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:445,14'
          Dst:             str_c
    - functionName:    smtp_parser_parse_domain
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - value_r
      BBCount:         59
      ICount:          343
      EdgeCount:       79
      CyclomaticComplexity: 22
      functionsReached:
        - __ctype_b_loc
        - str_append_c
        - str_c
        - t_str_new
      functionUses:    3
      BranchProfiles:
        - Branch String:   'smtp-parser.c:217,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:218,5'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:220,3'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:218,29'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:218,33'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - t_str_new
            - BranchSide:      'smtp-parser.c:222,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - t_str_new
        - Branch String:   'smtp-parser.c:218,52'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:219,5'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - t_str_new
            - BranchSide:      'smtp-parser.c:222,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - t_str_new
        - Branch String:   'smtp-parser.c:217,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:220,3'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:222,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - t_str_new
        - Branch String:   'smtp-parser.c:222,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:223,11'
              BranchSideFuncs:
                - t_str_new
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:225,2'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:227,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:227,38'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:228,4'
              BranchSideFuncs: []
        - Branch String:   'smtp-parser.c:227,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:228,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:231,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:231,32'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:231,36'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:236,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:231,55'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:232,5'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:236,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:231,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:233,4'
              BranchSideFuncs: []
            - BranchSide:      'smtp-parser.c:236,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:236,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:237,4'
              BranchSideFuncs:
                - str_append_c.2165
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:238,3'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:241,3'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:242,9'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:255,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_append_c.2165
                - str_c
        - Branch String:   'smtp-parser.c:242,33'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:242,37'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:249,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:242,56'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:246,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:249,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:242,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:247,5'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_append_c.2165
                - str_c
            - BranchSide:      'smtp-parser.c:249,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:249,8'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:250,5'
              BranchSideFuncs:
                - str_append_c.2165
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
            - BranchSide:      'smtp-parser.c:251,4'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:255,34'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:255,38'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:256,4'
              BranchSideFuncs:
                - str_c
        - Branch String:   'smtp-parser.c:255,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:256,4'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:258,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:258,7'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:259,4'
              BranchSideFuncs:
                - str_append_c.2165
                - __ctype_b_loc
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
            - BranchSide:      'smtp-parser.c:260,3'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.2165
                - str_c
                - __ctype_b_loc
                - str_append_c.2165
                - str_append_c.2165
        - Branch String:   'smtp-parser.c:263,6'
          Branch Sides:
            - BranchSide:      'smtp-parser.c:264,20'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'smtp-parser.c:265,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'smtp-parser.c:218,5'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:223,11'
          Dst:             t_str_new
        - Src:             'smtp-parser.c:231,8'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:237,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:242,9'
          Dst:             __ctype_b_loc
        - Src:             'smtp-parser.c:250,5'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:259,4'
          Dst:             str_append_c
        - Src:             'smtp-parser.c:264,14'
          Dst:             str_c
    - functionName:    smtp_parser_init
      functionSourceFile: '/src/dovecot/src/lib-smtp/smtp-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parser
        - pool
        - data
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'smtp-parser.c:163,32'
          Dst:             strlen
    - functionName:    i_stream_dot_eof
      functionSourceFile: '/src/dovecot/src/lib-mail/istream-dot.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dstream
        - destp
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flush_dot_state
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-dot.c:101,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:101,6'
              BranchSideFuncs:
                - flush_dot_state
            - BranchSide:      'istream-dot.c:102,3'
              BranchSideFuncs:
                - flush_dot_state
      Callsites:
        - Src:             'istream-dot.c:103,9'
          Dst:             flush_dot_state
    - functionName:    flush_dot_state
      functionSourceFile: '/src/dovecot/src/lib-mail/istream-dot.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dstream
        - destp
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - flush_pending
      functionUses:    6
      BranchProfiles:
        - Branch String:   'istream-dot.c:82,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:83,3'
              BranchSideFuncs:
                - flush_pending
            - BranchSide:      'istream-dot.c:84,6'
              BranchSideFuncs:
                - flush_pending
        - Branch String:   'istream-dot.c:84,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:85,3'
              BranchSideFuncs:
                - flush_pending
            - BranchSide:      'istream-dot.c:86,11'
              BranchSideFuncs:
                - flush_pending
        - Branch String:   'istream-dot.c:90,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:91,3'
              BranchSideFuncs:
                - flush_pending
            - BranchSide:      'istream-dot.c:94,3'
              BranchSideFuncs:
                - flush_pending
      Callsites:
        - Src:             'istream-dot.c:96,9'
          Dst:             flush_pending
    - functionName:    flush_pending
      functionSourceFile: '/src/dovecot/src/lib-mail/istream-dot.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dstream
        - destp
      BBCount:         8
      ICount:          97
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-dot.c:70,37'
          Branch Sides:
            - BranchSide:      'istream-dot.c:70,40'
              BranchSideFuncs: []
            - BranchSide:      'istream-dot.c:70,2'
              BranchSideFuncs: []
        - Branch String:   'istream-dot.c:70,2'
          Branch Sides:
            - BranchSide:      'istream-dot.c:71,30'
              BranchSideFuncs: []
            - BranchSide:      'istream-dot.c:72,10'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_dot_read_some
      functionSourceFile: '/src/dovecot/src/lib-mail/istream-dot.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - dstream
      BBCount:         27
      ICount:          164
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - i_stream_get_data_size
        - i_stream_read_memarea
        - i_stream_try_alloc
        - io_stream_set_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-dot.c:40,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:41,31'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data_size
                - i_stream_try_alloc
                - i_panic
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-dot.c:59,26'
              BranchSideFuncs:
                - i_stream_try_alloc
        - Branch String:   'istream-dot.c:42,7'
          Branch Sides:
            - BranchSide:      'istream-dot.c:43,4'
              BranchSideFuncs:
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-dot.c:55,33'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_try_alloc
                - i_panic
        - Branch String:   'istream-dot.c:43,4'
          Branch Sides:
            - BranchSide:      'istream-dot.c:43,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-dot.c:44,8'
              BranchSideFuncs:
                - io_stream_set_error
        - Branch String:   'istream-dot.c:44,8'
          Branch Sides:
            - BranchSide:      'istream-dot.c:46,6'
              BranchSideFuncs: []
            - BranchSide:      'istream-dot.c:47,15'
              BranchSideFuncs:
                - io_stream_set_error
        - Branch String:   'istream-dot.c:56,3'
          Branch Sides:
            - BranchSide:      'istream-dot.c:56,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-dot.c:57,2'
              BranchSideFuncs:
                - i_stream_try_alloc
        - Branch String:   'istream-dot.c:59,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:60,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-dot.c:61,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-dot.c:39,9'
          Dst:             i_stream_get_data_size
        - Src:             'istream-dot.c:41,9'
          Dst:             i_stream_read_memarea
        - Src:             'istream-dot.c:43,4'
          Dst:             i_panic
        - Src:             'istream-dot.c:49,5'
          Dst:             io_stream_set_error
        - Src:             'istream-dot.c:55,10'
          Dst:             i_stream_get_data_size
        - Src:             'istream-dot.c:56,3'
          Dst:             i_panic
        - Src:             'istream-dot.c:59,7'
          Dst:             i_stream_try_alloc
    - functionName:    i_stream_dot_return
      functionSourceFile: '/src/dovecot/src/lib-mail/istream-dot.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - dest
        - ret
      BBCount:         10
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   'istream-dot.c:111,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:111,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-dot.c:112,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-dot.c:112,3'
          Branch Sides:
            - BranchSide:      'istream-dot.c:112,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-dot.c:113,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-dot.c:112,3'
          Dst:             i_panic
    - functionName:    i_stream_dot_read
      functionSourceFile: '/src/dovecot/src/lib-mail/istream-dot.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         81
      ICount:          486
      EdgeCount:       105
      CyclomaticComplexity: 26
      functionsReached:
        - flush_dot_state
        - flush_pending
        - i_panic
        - i_stream_dot_eof
        - i_stream_dot_read
        - i_stream_dot_read_some
        - i_stream_dot_return
        - i_stream_get_data
        - i_stream_skip
        - i_stream_try_alloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-dot.c:127,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:128,27'
              BranchSideFuncs:
                - i_stream_try_alloc
                - flush_pending
                - i_stream_dot_return
                - i_stream_dot_read_some
                - i_stream_get_data
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_return
                - flush_dot_state
                - i_stream_dot_return
            - BranchSide:      'istream-dot.c:133,10'
              BranchSideFuncs:
                - i_stream_dot_return
                - i_stream_dot_read_some
                - i_stream_get_data
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_return
                - flush_dot_state
                - i_stream_dot_return
        - Branch String:   'istream-dot.c:128,7'
          Branch Sides:
            - BranchSide:      'istream-dot.c:129,4'
              BranchSideFuncs:
                - flush_pending
                - i_stream_dot_return
                - i_stream_dot_read_some
                - i_stream_get_data
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_return
                - flush_dot_state
                - i_stream_dot_return
            - BranchSide:      'istream-dot.c:130,10'
              BranchSideFuncs:
                - flush_pending
                - i_stream_dot_return
                - i_stream_dot_read_some
                - i_stream_get_data
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_return
                - flush_dot_state
                - i_stream_dot_return
        - Branch String:   'istream-dot.c:136,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:137,3'
              BranchSideFuncs:
                - i_stream_dot_return
            - BranchSide:      'istream-dot.c:142,29'
              BranchSideFuncs:
                - i_stream_dot_return
                - i_stream_dot_read_some
                - i_stream_get_data
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_return
                - flush_dot_state
        - Branch String:   'istream-dot.c:143,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:144,7'
              BranchSideFuncs:
                - i_stream_dot_return
                - flush_dot_state
            - BranchSide:      'istream-dot.c:153,9'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:144,7'
          Branch Sides:
            - BranchSide:      'istream-dot.c:145,4'
              BranchSideFuncs: []
            - BranchSide:      'istream-dot.c:146,7'
              BranchSideFuncs:
                - i_stream_dot_return
                - flush_dot_state
        - Branch String:   'istream-dot.c:146,7'
          Branch Sides:
            - BranchSide:      'istream-dot.c:147,11'
              BranchSideFuncs: []
            - BranchSide:      'istream-dot.c:148,10'
              BranchSideFuncs:
                - i_stream_dot_return
                - flush_dot_state
        - Branch String:   'istream-dot.c:149,17'
          Branch Sides:
            - BranchSide:      'istream-dot.c:149,20'
              BranchSideFuncs:
                - i_stream_dot_return
                - flush_dot_state
            - BranchSide:      'istream-dot.c:151,30'
              BranchSideFuncs:
                - i_stream_dot_return
        - Branch String:   'istream-dot.c:149,7'
          Branch Sides:
            - BranchSide:      'istream-dot.c:150,26'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_dot_return
            - BranchSide:      'istream-dot.c:151,30'
              BranchSideFuncs:
                - i_stream_dot_return
        - Branch String:   'istream-dot.c:156,23'
          Branch Sides:
            - BranchSide:      'istream-dot.c:156,26'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:156,2'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:156,2'
          Branch Sides:
            - BranchSide:      'istream-dot.c:157,11'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:217,2'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
        - Branch String:   'istream-dot.c:157,3'
          Branch Sides:
            - BranchSide:      'istream-dot.c:159,4'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:162,8'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
            - BranchSide:      'istream-dot.c:171,8'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
            - BranchSide:      'istream-dot.c:180,8'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_eof
            - BranchSide:      'istream-dot.c:195,8'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_eof
            - BranchSide:      'istream-dot.c:206,7'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:162,8'
          Branch Sides:
            - BranchSide:      'istream-dot.c:163,5'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:165,26'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
        - Branch String:   'istream-dot.c:165,9'
          Branch Sides:
            - BranchSide:      'istream-dot.c:0,0'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:166,6'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
        - Branch String:   'istream-dot.c:171,8'
          Branch Sides:
            - BranchSide:      'istream-dot.c:172,5'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:174,26'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
        - Branch String:   'istream-dot.c:174,9'
          Branch Sides:
            - BranchSide:      'istream-dot.c:0,0'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:175,6'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
        - Branch String:   'istream-dot.c:180,8'
          Branch Sides:
            - BranchSide:      'istream-dot.c:181,5'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:182,13'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_eof
        - Branch String:   'istream-dot.c:182,29'
          Branch Sides:
            - BranchSide:      'istream-dot.c:182,32'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
                - i_stream_dot_eof
            - BranchSide:      'istream-dot.c:189,26'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:182,13'
          Branch Sides:
            - BranchSide:      'istream-dot.c:184,22'
              BranchSideFuncs:
                - i_stream_dot_eof
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
            - BranchSide:      'istream-dot.c:189,26'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:195,8'
          Branch Sides:
            - BranchSide:      'istream-dot.c:197,22'
              BranchSideFuncs:
                - i_stream_dot_eof
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
            - BranchSide:      'istream-dot.c:202,26'
              BranchSideFuncs:
                - flush_dot_state
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:206,7'
          Branch Sides:
            - BranchSide:      'istream-dot.c:207,8'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:217,2'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:207,8'
          Branch Sides:
            - BranchSide:      'istream-dot.c:208,5'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:210,15'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:210,31'
          Branch Sides:
            - BranchSide:      'istream-dot.c:210,34'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:214,32'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:210,15'
          Branch Sides:
            - BranchSide:      'istream-dot.c:211,5'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
            - BranchSide:      'istream-dot.c:214,32'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_dot_return
                - i_panic
                - i_stream_dot_read
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - i_stream_dot_eof
                - flush_dot_state
                - flush_dot_state
        - Branch String:   'istream-dot.c:222,6'
          Branch Sides:
            - BranchSide:      'istream-dot.c:223,28'
              BranchSideFuncs:
                - i_stream_dot_read
            - BranchSide:      'istream-dot.c:224,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-dot.c:224,2'
          Branch Sides:
            - BranchSide:      'istream-dot.c:224,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-dot.c:225,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-dot.c:128,8'
          Dst:             i_stream_try_alloc
        - Src:             'istream-dot.c:131,9'
          Dst:             flush_pending
        - Src:             'istream-dot.c:138,10'
          Dst:             i_stream_dot_return
        - Src:             'istream-dot.c:142,9'
          Dst:             i_stream_dot_return
        - Src:             'istream-dot.c:143,13'
          Dst:             i_stream_dot_read_some
        - Src:             'istream-dot.c:150,10'
          Dst:             flush_dot_state
        - Src:             'istream-dot.c:151,10'
          Dst:             i_stream_dot_return
        - Src:             'istream-dot.c:155,9'
          Dst:             i_stream_get_data
        - Src:             'istream-dot.c:165,10'
          Dst:             flush_dot_state
        - Src:             'istream-dot.c:174,10'
          Dst:             flush_dot_state
        - Src:             'istream-dot.c:184,5'
          Dst:             i_stream_dot_eof
        - Src:             'istream-dot.c:189,10'
          Dst:             flush_dot_state
        - Src:             'istream-dot.c:197,5'
          Dst:             i_stream_dot_eof
        - Src:             'istream-dot.c:202,10'
          Dst:             flush_dot_state
        - Src:             'istream-dot.c:219,2'
          Dst:             i_stream_skip
        - Src:             'istream-dot.c:221,8'
          Dst:             i_stream_dot_return
        - Src:             'istream-dot.c:223,10'
          Dst:             i_stream_dot_read
        - Src:             'istream-dot.c:224,2'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_create_dot
      functionSourceFile: '/src/dovecot/src/lib-mail/istream-dot.c'
      linkageType:     externalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - input
        - flags
      BBCount:         3
      ICount:          117
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create
        - i_stream_get_fd
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-dot.c:233,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-dot.c:233,12'
          Dst:             p_malloc
        - Src:             'istream-dot.c:246,11'
          Dst:             i_stream_get_fd
        - Src:             'istream-dot.c:245,9'
          Dst:             i_stream_create
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    parse_path
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         33
      ICount:          181
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - add_address
        - parse_angle_addr
        - parse_domain
        - parse_local_part
        - rfc822_skip_lwsp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:417,6'
          Branch Sides:
            - BranchSide:      'message-address.c:418,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:419,7'
              BranchSideFuncs:
                - parse_angle_addr
                - rfc822_skip_lwsp
                - add_address
                - parse_local_part
                - parse_domain
        - Branch String:   'message-address.c:419,6'
          Branch Sides:
            - BranchSide:      'message-address.c:424,29'
              BranchSideFuncs:
                - parse_local_part
                - rfc822_skip_lwsp
                - add_address
                - parse_domain
            - BranchSide:      'message-address.c:429,26'
              BranchSideFuncs:
                - parse_angle_addr
                - rfc822_skip_lwsp
                - add_address
        - Branch String:   'message-address.c:424,39'
          Branch Sides:
            - BranchSide:      'message-address.c:425,8'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - add_address
                - parse_domain
            - BranchSide:      'message-address.c:428,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - add_address
        - Branch String:   'message-address.c:424,7'
          Branch Sides:
            - BranchSide:      'message-address.c:426,23'
              BranchSideFuncs:
                - parse_domain
                - rfc822_skip_lwsp
                - add_address
            - BranchSide:      'message-address.c:428,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - add_address
        - Branch String:   'message-address.c:431,14'
          Branch Sides:
            - BranchSide:      'message-address.c:431,40'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:436,3'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:431,58'
          Branch Sides:
            - BranchSide:      'message-address.c:432,6'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:436,3'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:432,42'
          Branch Sides:
            - BranchSide:      'message-address.c:433,7'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:436,3'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:433,33'
          Branch Sides:
            - BranchSide:      'message-address.c:434,8'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:435,7'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:434,33'
          Branch Sides:
            - BranchSide:      'message-address.c:434,37'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:436,3'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:434,64'
          Branch Sides:
            - BranchSide:      'message-address.c:435,7'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:436,3'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:435,33'
          Branch Sides:
            - BranchSide:      'message-address.c:435,36'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:439,14'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:431,6'
          Branch Sides:
            - BranchSide:      'message-address.c:436,3'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:439,14'
              BranchSideFuncs:
                - add_address
      Callsites:
        - Src:             'message-address.c:417,6'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:424,12'
          Dst:             parse_local_part
        - Src:             'message-address.c:426,10'
          Dst:             parse_domain
        - Src:             'message-address.c:429,9'
          Dst:             parse_angle_addr
        - Src:             'message-address.c:431,22'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:439,2'
          Dst:             add_address
    - functionName:    parse_local_part
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         16
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - p_strdup
        - parse_nonstrict_dot_atom
        - rfc822_parse_dot_atom
        - rfc822_parse_quoted_string
        - str_c
        - str_truncate
      functionUses:    3
      BranchProfiles:
        - Branch String:   'message-address.c:109,2'
          Branch Sides:
            - BranchSide:      'message-address.c:109,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:111,15'
              BranchSideFuncs:
                - str_truncate.2333
                - rfc822_parse_dot_atom
                - str_c
                - p_strdup
                - parse_nonstrict_dot_atom
                - rfc822_parse_quoted_string
        - Branch String:   'message-address.c:112,6'
          Branch Sides:
            - BranchSide:      'message-address.c:113,37'
              BranchSideFuncs:
                - rfc822_parse_quoted_string
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:114,12'
              BranchSideFuncs:
                - rfc822_parse_dot_atom
                - str_c
                - p_strdup
                - parse_nonstrict_dot_atom
        - Branch String:   'message-address.c:114,11'
          Branch Sides:
            - BranchSide:      'message-address.c:115,32'
              BranchSideFuncs:
                - parse_nonstrict_dot_atom
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:117,35'
              BranchSideFuncs:
                - parse_nonstrict_dot_atom
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:118,6'
          Branch Sides:
            - BranchSide:      'message-address.c:119,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:121,31'
              BranchSideFuncs:
                - str_c
                - p_strdup
      Callsites:
        - Src:             'message-address.c:109,2'
          Dst:             i_panic
        - Src:             'message-address.c:111,2'
          Dst:             str_truncate
        - Src:             'message-address.c:113,9'
          Dst:             rfc822_parse_quoted_string
        - Src:             'message-address.c:115,9'
          Dst:             rfc822_parse_dot_atom
        - Src:             'message-address.c:117,9'
          Dst:             parse_nonstrict_dot_atom
        - Src:             'message-address.c:121,42'
          Dst:             str_c
        - Src:             'message-address.c:121,22'
          Dst:             p_strdup
    - functionName:    parse_domain
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - p_strdup
        - rfc822_parse_domain
        - str_c
        - str_truncate
      functionUses:    3
      BranchProfiles:
        - Branch String:   'message-address.c:130,6'
          Branch Sides:
            - BranchSide:      'message-address.c:131,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:133,30'
              BranchSideFuncs:
                - str_c
                - p_strdup
      Callsites:
        - Src:             'message-address.c:129,2'
          Dst:             str_truncate
        - Src:             'message-address.c:130,13'
          Dst:             rfc822_parse_domain
        - Src:             'message-address.c:133,41'
          Dst:             str_c
        - Src:             'message-address.c:133,21'
          Dst:             p_strdup
    - functionName:    parse_angle_addr
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ctx
        - parsing_path
      BBCount:         47
      ICount:          275
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - i_panic
        - parse_domain
        - parse_domain_list
        - parse_local_part
        - rfc822_skip_lwsp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'message-address.c:169,2'
          Branch Sides:
            - BranchSide:      'message-address.c:169,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:170,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
                - parse_domain_list
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:172,6'
          Branch Sides:
            - BranchSide:      'message-address.c:173,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:175,7'
              BranchSideFuncs:
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
                - parse_domain_list
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:175,6'
          Branch Sides:
            - BranchSide:      'message-address.c:176,25'
              BranchSideFuncs:
                - parse_domain_list
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
            - BranchSide:      'message-address.c:191,7'
              BranchSideFuncs:
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:176,34'
          Branch Sides:
            - BranchSide:      'message-address.c:176,38'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
            - BranchSide:      'message-address.c:178,14'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:176,7'
          Branch Sides:
            - BranchSide:      'message-address.c:177,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
            - BranchSide:      'message-address.c:178,14'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:178,27'
          Branch Sides:
            - BranchSide:      'message-address.c:178,31'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
            - BranchSide:      'message-address.c:181,8'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:178,67'
          Branch Sides:
            - BranchSide:      'message-address.c:178,71'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:179,4'
              BranchSideFuncs: []
        - Branch String:   'message-address.c:178,14'
          Branch Sides:
            - BranchSide:      'message-address.c:179,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:181,8'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:181,8'
          Branch Sides:
            - BranchSide:      'message-address.c:182,5'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
            - BranchSide:      'message-address.c:183,8'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:187,7'
          Branch Sides:
            - BranchSide:      'message-address.c:188,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:189,2'
              BranchSideFuncs:
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:191,6'
          Branch Sides:
            - BranchSide:      'message-address.c:193,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:194,24'
              BranchSideFuncs:
                - parse_local_part
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:194,7'
          Branch Sides:
            - BranchSide:      'message-address.c:195,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:196,8'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_domain
        - Branch String:   'message-address.c:197,8'
          Branch Sides:
            - BranchSide:      'message-address.c:198,5'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:199,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:202,6'
          Branch Sides:
            - BranchSide:      'message-address.c:203,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:204,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
      Callsites:
        - Src:             'message-address.c:169,2'
          Dst:             i_panic
        - Src:             'message-address.c:172,6'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:176,7'
          Dst:             parse_domain_list
        - Src:             'message-address.c:187,7'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:194,7'
          Dst:             parse_local_part
        - Src:             'message-address.c:197,8'
          Dst:             parse_domain
        - Src:             'message-address.c:206,9'
          Dst:             rfc822_skip_lwsp
    - functionName:    add_address
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         8
      ICount:          76
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_memcpy
        - malloc_multiply_check
        - p_malloc
      functionUses:    4
      BranchProfiles:
        - Branch String:   'message-address.c:32,2'
          Branch Sides:
            - BranchSide:      'message-address.c:32,2'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:32,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-address.c:27,9'
          Dst:             malloc_multiply_check
        - Src:             'message-address.c:27,9'
          Dst:             p_malloc
        - Src:             'message-address.c:29,2'
          Dst:             i_memcpy
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:75,2'
          Dst:             i_panic
    - functionName:    parse_domain_list
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         21
      ICount:          143
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - p_strdup
        - rfc822_parse_domain
        - rfc822_skip_lwsp
        - str_append_c
        - str_c
        - str_len
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:144,7'
          Branch Sides:
            - BranchSide:      'message-address.c:145,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:147,8'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_append_c.2335
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:147,7'
          Branch Sides:
            - BranchSide:      'message-address.c:148,4'
              BranchSideFuncs:
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:150,15'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_c
                - p_strdup
                - str_append_c.2335
        - Branch String:   'message-address.c:150,7'
          Branch Sides:
            - BranchSide:      'message-address.c:151,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_len.2334
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:153,3'
              BranchSideFuncs:
                - str_append_c.2335
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_len.2334
                - str_append_c.2335
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:154,7'
          Branch Sides:
            - BranchSide:      'message-address.c:155,11'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:157,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_len.2334
                - str_append_c.2335
                - rfc822_parse_domain
                - str_append_c.2335
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:157,45'
          Branch Sides:
            - BranchSide:      'message-address.c:157,3'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_append_c.2335
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:158,11'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - rfc822_parse_domain
                - rfc822_skip_lwsp
                - str_append_c.2335
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:157,3'
          Branch Sides:
            - BranchSide:      'message-address.c:143,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_len.2334
                - str_append_c.2335
                - rfc822_parse_domain
                - str_append_c.2335
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:159,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_len.2334
                - str_append_c.2335
                - rfc822_parse_domain
                - str_append_c.2335
                - str_c
                - p_strdup
      Callsites:
        - Src:             'message-address.c:142,2'
          Dst:             str_truncate
        - Src:             'message-address.c:150,7'
          Dst:             str_len
        - Src:             'message-address.c:151,4'
          Dst:             str_append_c
        - Src:             'message-address.c:153,3'
          Dst:             str_append_c
        - Src:             'message-address.c:154,14'
          Dst:             rfc822_parse_domain
        - Src:             'message-address.c:157,10'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:161,40'
          Dst:             str_c
        - Src:             'message-address.c:161,20'
          Dst:             p_strdup
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    8
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    parse_nonstrict_dot_atom
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         19
      ICount:          106
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - rfc822_parse_atom
        - str_append_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:84,3'
          Branch Sides:
            - BranchSide:      'message-address.c:85,4'
              BranchSideFuncs:
                - str_append_c.2335
                - rfc822_parse_atom
            - BranchSide:      'message-address.c:94,8'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2335
        - Branch String:   'message-address.c:87,8'
          Branch Sides:
            - BranchSide:      'message-address.c:90,5'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:92,8'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2335
        - Branch String:   'message-address.c:94,7'
          Branch Sides:
            - BranchSide:      'message-address.c:95,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:96,27'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2335
        - Branch String:   'message-address.c:97,19'
          Branch Sides:
            - BranchSide:      'message-address.c:97,23'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2335
            - BranchSide:      'message-address.c:97,2'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2335
        - Branch String:   'message-address.c:97,2'
          Branch Sides:
            - BranchSide:      'message-address.c:84,3'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_append_c.2335
            - BranchSide:      'message-address.c:98,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-address.c:85,4'
          Dst:             str_append_c
        - Src:             'message-address.c:96,9'
          Dst:             rfc822_parse_atom
    - functionName:    parse_addr_spec
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         32
      ICount:          233
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - p_strdup
        - parse_domain
        - parse_local_part
        - rfc822_parse_phrase
        - str_append_c
        - str_c
        - str_len
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:239,2'
          Branch Sides:
            - BranchSide:      'message-address.c:239,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:241,15'
              BranchSideFuncs:
                - str_truncate.2333
                - parse_local_part
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
        - Branch String:   'message-address.c:245,6'
          Branch Sides:
            - BranchSide:      'message-address.c:247,3'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
            - BranchSide:      'message-address.c:249,6'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
        - Branch String:   'message-address.c:249,15'
          Branch Sides:
            - BranchSide:      'message-address.c:249,18'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
            - BranchSide:      'message-address.c:256,14'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:249,53'
          Branch Sides:
            - BranchSide:      'message-address.c:250,7'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - parse_domain
            - BranchSide:      'message-address.c:256,14'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:249,6'
          Branch Sides:
            - BranchSide:      'message-address.c:251,23'
              BranchSideFuncs:
                - parse_domain
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:256,14'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:252,7'
          Branch Sides:
            - BranchSide:      'message-address.c:253,10'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:254,2'
              BranchSideFuncs:
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:256,6'
          Branch Sides:
            - BranchSide:      'message-address.c:257,29'
              BranchSideFuncs:
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:258,11'
              BranchSideFuncs:
                - str_append_c.2335
                - str_len.2334
                - rfc822_parse_phrase
                - str_len.2334
                - str_c
                - p_strdup
        - Branch String:   'message-address.c:266,7'
          Branch Sides:
            - BranchSide:      'message-address.c:267,4'
              BranchSideFuncs:
                - str_c
                - p_strdup
            - BranchSide:      'message-address.c:270,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-address.c:239,2'
          Dst:             i_panic
        - Src:             'message-address.c:241,2'
          Dst:             str_truncate
        - Src:             'message-address.c:244,8'
          Dst:             parse_local_part
        - Src:             'message-address.c:251,10'
          Dst:             parse_domain
        - Src:             'message-address.c:256,6'
          Dst:             str_len
        - Src:             'message-address.c:257,40'
          Dst:             str_c
        - Src:             'message-address.c:257,20'
          Dst:             p_strdup
        - Src:             'message-address.c:263,3'
          Dst:             str_append_c
        - Src:             'message-address.c:264,25'
          Dst:             str_len
        - Src:             'message-address.c:265,9'
          Dst:             rfc822_parse_phrase
        - Src:             'message-address.c:266,7'
          Dst:             str_len
        - Src:             'message-address.c:268,41'
          Dst:             str_c
        - Src:             'message-address.c:268,21'
          Dst:             p_strdup
    - functionName:    parse_name_addr
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         18
      ICount:          125
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - p_strdup
        - parse_angle_addr
        - rfc822_parse_phrase
        - str_c
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:216,55'
          Branch Sides:
            - BranchSide:      'message-address.c:217,7'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:218,3'
              BranchSideFuncs: []
        - Branch String:   'message-address.c:216,6'
          Branch Sides:
            - BranchSide:      'message-address.c:218,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:220,28'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - parse_angle_addr
        - Branch String:   'message-address.c:221,6'
          Branch Sides:
            - BranchSide:      'message-address.c:223,3'
              BranchSideFuncs:
                - parse_angle_addr
            - BranchSide:      'message-address.c:225,23'
              BranchSideFuncs:
                - parse_angle_addr
        - Branch String:   'message-address.c:225,6'
          Branch Sides:
            - BranchSide:      'message-address.c:227,7'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:231,9'
              BranchSideFuncs: []
        - Branch String:   'message-address.c:227,7'
          Branch Sides:
            - BranchSide:      'message-address.c:228,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:229,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-address.c:215,2'
          Dst:             str_truncate
        - Src:             'message-address.c:216,6'
          Dst:             rfc822_parse_phrase
        - Src:             'message-address.c:220,39'
          Dst:             str_c
        - Src:             'message-address.c:220,19'
          Dst:             p_strdup
        - Src:             'message-address.c:225,6'
          Dst:             parse_angle_addr
    - functionName:    parse_mailbox
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         18
      ICount:          117
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - add_fixed_address
        - parse_addr_spec
        - parse_name_addr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'message-address.c:299,6'
          Branch Sides:
            - BranchSide:      'message-address.c:301,22'
              BranchSideFuncs:
                - parse_addr_spec
                - add_fixed_address
            - BranchSide:      'message-address.c:310,6'
              BranchSideFuncs:
                - add_fixed_address
        - Branch String:   'message-address.c:303,32'
          Branch Sides:
            - BranchSide:      'message-address.c:303,35'
              BranchSideFuncs:
                - add_fixed_address
            - BranchSide:      'message-address.c:308,2'
              BranchSideFuncs:
                - add_fixed_address
        - Branch String:   'message-address.c:303,58'
          Branch Sides:
            - BranchSide:      'message-address.c:304,7'
              BranchSideFuncs:
                - add_fixed_address
            - BranchSide:      'message-address.c:308,2'
              BranchSideFuncs:
                - add_fixed_address
        - Branch String:   'message-address.c:304,33'
          Branch Sides:
            - BranchSide:      'message-address.c:304,36'
              BranchSideFuncs:
                - add_fixed_address
            - BranchSide:      'message-address.c:308,2'
              BranchSideFuncs:
                - add_fixed_address
        - Branch String:   'message-address.c:303,7'
          Branch Sides:
            - BranchSide:      'message-address.c:305,21'
              BranchSideFuncs:
                - add_fixed_address
            - BranchSide:      'message-address.c:308,2'
              BranchSideFuncs:
                - add_fixed_address
        - Branch String:   'message-address.c:310,6'
          Branch Sides:
            - BranchSide:      'message-address.c:310,6'
              BranchSideFuncs:
                - add_fixed_address
            - BranchSide:      'message-address.c:311,3'
              BranchSideFuncs:
                - add_fixed_address
      Callsites:
        - Src:             'message-address.c:299,13'
          Dst:             parse_name_addr
        - Src:             'message-address.c:302,9'
          Dst:             parse_addr_spec
        - Src:             'message-address.c:312,2'
          Dst:             add_fixed_address
    - functionName:    add_fixed_address
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_address
      functionUses:    2
      BranchProfiles:
        - Branch String:   'message-address.c:281,6'
          Branch Sides:
            - BranchSide:      'message-address.c:282,24'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:285,6'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:285,31'
          Branch Sides:
            - BranchSide:      'message-address.c:285,34'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:286,23'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:285,6'
          Branch Sides:
            - BranchSide:      'message-address.c:285,6'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:286,23'
              BranchSideFuncs:
                - add_address
      Callsites:
        - Src:             'message-address.c:289,2'
          Dst:             add_address
    - functionName:    parse_group
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         41
      ICount:          250
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - add_address
        - p_strdup
        - parse_mailbox
        - rfc822_parse_phrase
        - rfc822_skip_lwsp
        - str_c
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:325,55'
          Branch Sides:
            - BranchSide:      'message-address.c:326,7'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:327,3'
              BranchSideFuncs: []
        - Branch String:   'message-address.c:325,6'
          Branch Sides:
            - BranchSide:      'message-address.c:327,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:331,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_c
                - p_strdup
                - add_address
                - add_address
                - rfc822_skip_lwsp
                - parse_mailbox
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:332,6'
          Branch Sides:
            - BranchSide:      'message-address.c:333,3'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - add_address
                - add_address
                - rfc822_skip_lwsp
                - parse_mailbox
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:335,31'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - add_address
                - add_address
                - rfc822_skip_lwsp
                - parse_mailbox
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:338,14'
          Branch Sides:
            - BranchSide:      'message-address.c:338,18'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
                - parse_mailbox
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:355,6'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:338,6'
          Branch Sides:
            - BranchSide:      'message-address.c:339,3'
              BranchSideFuncs:
                - parse_mailbox
                - rfc822_skip_lwsp
                - add_address
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:355,6'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:342,8'
          Branch Sides:
            - BranchSide:      'message-address.c:344,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_mailbox
                - add_address
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:345,8'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_mailbox
                - add_address
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:345,44'
          Branch Sides:
            - BranchSide:      'message-address.c:346,9'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:347,5'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:345,8'
          Branch Sides:
            - BranchSide:      'message-address.c:347,5'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:348,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_mailbox
                - add_address
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:349,8'
          Branch Sides:
            - BranchSide:      'message-address.c:339,3'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
            - BranchSide:      'message-address.c:350,9'
              BranchSideFuncs:
                - add_address
                - rfc822_skip_lwsp
        - Branch String:   'message-address.c:355,6'
          Branch Sides:
            - BranchSide:      'message-address.c:356,7'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - add_address
            - BranchSide:      'message-address.c:364,6'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:356,43'
          Branch Sides:
            - BranchSide:      'message-address.c:357,8'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:358,8'
              BranchSideFuncs:
                - add_address
        - Branch String:   'message-address.c:356,7'
          Branch Sides:
            - BranchSide:      'message-address.c:358,8'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:360,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - add_address
        - Branch String:   'message-address.c:364,6'
          Branch Sides:
            - BranchSide:      'message-address.c:365,3'
              BranchSideFuncs:
                - add_address
            - BranchSide:      'message-address.c:367,14'
              BranchSideFuncs:
                - add_address
      Callsites:
        - Src:             'message-address.c:324,2'
          Dst:             str_truncate
        - Src:             'message-address.c:325,6'
          Dst:             rfc822_parse_phrase
        - Src:             'message-address.c:332,13'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:335,42'
          Dst:             str_c
        - Src:             'message-address.c:335,22'
          Dst:             p_strdup
        - Src:             'message-address.c:336,2'
          Dst:             add_address
        - Src:             'message-address.c:342,8'
          Dst:             parse_mailbox
        - Src:             'message-address.c:349,8'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:361,10'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:367,2'
          Dst:             add_address
    - functionName:    parse_address
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_group
        - parse_mailbox
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:378,6'
          Branch Sides:
            - BranchSide:      'message-address.c:378,6'
              BranchSideFuncs:
                - parse_mailbox
            - BranchSide:      'message-address.c:380,22'
              BranchSideFuncs:
                - parse_mailbox
      Callsites:
        - Src:             'message-address.c:378,13'
          Dst:             parse_group
        - Src:             'message-address.c:381,9'
          Dst:             parse_mailbox
    - functionName:    rfc822_parser_deinit
      functionSourceFile: '/src/dovecot/src/lib-mail/./rfc822-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         7
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './rfc822-parser.h:31,2'
          Branch Sides:
            - BranchSide:      './rfc822-parser.h:31,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './rfc822-parser.h:31,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './rfc822-parser.h:31,2'
          Dst:             i_panic
    - functionName:    parse_address_list
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ctx
        - max_addresses
      BBCount:         19
      ICount:          103
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - add_fixed_address
        - parse_address
        - rfc822_skip_lwsp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:392,2'
          Branch Sides:
            - BranchSide:      'message-address.c:392,2'
              BranchSideFuncs:
                - parse_address
                - rfc822_skip_lwsp
                - add_fixed_address
            - BranchSide:      'message-address.c:393,16'
              BranchSideFuncs:
                - parse_address
                - rfc822_skip_lwsp
                - add_fixed_address
        - Branch String:   'message-address.c:394,7'
          Branch Sides:
            - BranchSide:      'message-address.c:395,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:396,7'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_address
                - add_fixed_address
        - Branch String:   'message-address.c:396,43'
          Branch Sides:
            - BranchSide:      'message-address.c:397,8'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:398,8'
              BranchSideFuncs: []
        - Branch String:   'message-address.c:396,7'
          Branch Sides:
            - BranchSide:      'message-address.c:398,8'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:401,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - parse_address
                - add_fixed_address
        - Branch String:   'message-address.c:402,7'
          Branch Sides:
            - BranchSide:      'message-address.c:392,2'
              BranchSideFuncs:
                - add_fixed_address
            - BranchSide:      'message-address.c:403,8'
              BranchSideFuncs:
                - add_fixed_address
        - Branch String:   'message-address.c:403,8'
          Branch Sides:
            - BranchSide:      'message-address.c:405,23'
              BranchSideFuncs:
                - add_fixed_address
            - BranchSide:      'message-address.c:407,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-address.c:394,14'
          Dst:             parse_address
        - Src:             'message-address.c:402,14'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:405,5'
          Dst:             add_fixed_address
    - functionName:    message_header_is_address
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - hdr_name
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'message-address.c:676,2'
          Branch Sides:
            - BranchSide:      'message-address.c:677,18'
              BranchSideFuncs:
                - strcasecmp
            - BranchSide:      'message-address.c:680,2'
              BranchSideFuncs: []
        - Branch String:   'message-address.c:677,7'
          Branch Sides:
            - BranchSide:      'message-address.c:678,4'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:679,2'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'message-address.c:677,7'
          Dst:             strcasecmp
    - functionName:    message_address_init_from_smtp
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - addr
        - name
        - smtp_addr
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    message_address_init
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - addr
        - name
        - mailbox
        - domain
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    message_address_first_to_string
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - addr
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - message_address_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'message-address.c:645,9'
          Dst:             message_address_to_string
    - functionName:    message_address_to_string
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - addr
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - message_address_write
        - str_c
        - t_str_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'message-address.c:632,18'
          Dst:             t_str_new
        - Src:             'message-address.c:633,2'
          Dst:             message_address_write
        - Src:             'message-address.c:634,9'
          Dst:             str_c
    - functionName:    message_address_write
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - addr
      BBCount:         93
      ICount:          500
      EdgeCount:       119
      CyclomaticComplexity: 28
      functionsReached:
        - i_panic
        - str_append
        - str_append_c
        - str_append_maybe_escape
        - str_c
        - str_len
        - str_truncate
        - strstr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:536,6'
          Branch Sides:
            - BranchSide:      'message-address.c:537,3'
              BranchSideFuncs: []
            - BranchSide:      'message-address.c:540,6'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append.2356
                - i_panic
        - Branch String:   'message-address.c:540,28'
          Branch Sides:
            - BranchSide:      'message-address.c:540,31'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append.2356
                - i_panic
            - BranchSide:      'message-address.c:550,2'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:540,6'
          Branch Sides:
            - BranchSide:      'message-address.c:541,3'
              BranchSideFuncs:
                - str_append.2356
                - i_panic
            - BranchSide:      'message-address.c:550,2'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:541,3'
          Branch Sides:
            - BranchSide:      'message-address.c:541,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:542,14'
              BranchSideFuncs:
                - str_append.2356
        - Branch String:   'message-address.c:550,2'
          Branch Sides:
            - BranchSide:      'message-address.c:550,2'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:551,7'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:551,7'
          Branch Sides:
            - BranchSide:      'message-address.c:552,10'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:554,15'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:556,7'
          Branch Sides:
            - BranchSide:      'message-address.c:557,9'
              BranchSideFuncs:
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:592,4'
              BranchSideFuncs:
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
        - Branch String:   'message-address.c:557,8'
          Branch Sides:
            - BranchSide:      'message-address.c:560,9'
              BranchSideFuncs:
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:577,5'
              BranchSideFuncs:
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:560,31'
          Branch Sides:
            - BranchSide:      'message-address.c:560,35'
              BranchSideFuncs:
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2356
            - BranchSide:      'message-address.c:571,17'
              BranchSideFuncs:
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:560,9'
          Branch Sides:
            - BranchSide:      'message-address.c:562,17'
              BranchSideFuncs:
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append.2356
            - BranchSide:      'message-address.c:571,17'
              BranchSideFuncs:
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:562,10'
          Branch Sides:
            - BranchSide:      'message-address.c:566,18'
              BranchSideFuncs:
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:568,31'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - strstr
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
        - Branch String:   'message-address.c:577,5'
          Branch Sides:
            - BranchSide:      'message-address.c:577,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:580,17'
              BranchSideFuncs:
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
        - Branch String:   'message-address.c:581,5'
          Branch Sides:
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - i_panic
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - i_panic
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
        - Branch String:   'message-address.c:581,5'
          Branch Sides:
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - i_panic
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - i_panic
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
        - Branch String:   'message-address.c:581,5'
          Branch Sides:
            - BranchSide:      'message-address.c:581,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:582,9'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - i_panic
                - i_panic
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
        - Branch String:   'message-address.c:582,23'
          Branch Sides:
            - BranchSide:      'message-address.c:582,26'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - i_panic
                - i_panic
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
            - BranchSide:      'message-address.c:584,14'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_len.2334
                - str_truncate.2333
        - Branch String:   'message-address.c:582,9'
          Branch Sides:
            - BranchSide:      'message-address.c:583,19'
              BranchSideFuncs:
                - str_len.2334
                - str_truncate.2333
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:584,14'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_len.2334
                - str_truncate.2333
        - Branch String:   'message-address.c:592,4'
          Branch Sides:
            - BranchSide:      'message-address.c:592,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:594,8'
              BranchSideFuncs:
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
        - Branch String:   'message-address.c:594,8'
          Branch Sides:
            - BranchSide:      'message-address.c:596,16'
              BranchSideFuncs:
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
            - BranchSide:      'message-address.c:604,8'
              BranchSideFuncs:
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
        - Branch String:   'message-address.c:596,9'
          Branch Sides:
            - BranchSide:      'message-address.c:600,17'
              BranchSideFuncs:
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:602,30'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append.2356
                - strstr
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
        - Branch String:   'message-address.c:604,28'
          Branch Sides:
            - BranchSide:      'message-address.c:605,8'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:607,9'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
        - Branch String:   'message-address.c:605,33'
          Branch Sides:
            - BranchSide:      'message-address.c:606,8'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:607,9'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
        - Branch String:   'message-address.c:607,28'
          Branch Sides:
            - BranchSide:      'message-address.c:607,31'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:609,5'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
        - Branch String:   'message-address.c:607,9'
          Branch Sides:
            - BranchSide:      'message-address.c:608,6'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
            - BranchSide:      'message-address.c:609,5'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
        - Branch String:   'message-address.c:610,9'
          Branch Sides:
            - BranchSide:      'message-address.c:611,17'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
            - BranchSide:      'message-address.c:614,9'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
        - Branch String:   'message-address.c:614,9'
          Branch Sides:
            - BranchSide:      'message-address.c:615,17'
              BranchSideFuncs:
                - str_append.2356
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
            - BranchSide:      'message-address.c:617,30'
              BranchSideFuncs:
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
                - str_append_c.2335
                - str_append.2356
        - Branch String:   'message-address.c:618,9'
          Branch Sides:
            - BranchSide:      'message-address.c:619,6'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
            - BranchSide:      'message-address.c:622,5'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append.2356
                - str_append_c.2335
                - str_append_maybe_escape
                - str_append_c.2335
                - str_append.2356
                - str_append.2356
                - str_append.2356
                - str_append_c.2335
                - str_append_c.2335
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - i_panic
                - str_append.2356
                - str_append.2356
                - strstr
                - str_append_maybe_escape
                - str_append.2356
                - str_c
                - str_len.2334
                - str_append_c.2335
                - str_len.2334
                - str_truncate.2333
                - str_len.2334
                - str_truncate.2333
                - i_panic
                - i_panic
      Callsites:
        - Src:             'message-address.c:541,3'
          Dst:             i_panic
        - Src:             'message-address.c:542,3'
          Dst:             str_append
        - Src:             'message-address.c:554,4'
          Dst:             str_append
        - Src:             'message-address.c:562,10'
          Dst:             strstr
        - Src:             'message-address.c:566,7'
          Dst:             str_append
        - Src:             'message-address.c:568,7'
          Dst:             str_append_maybe_escape
        - Src:             'message-address.c:571,6'
          Dst:             str_append
        - Src:             'message-address.c:573,5'
          Dst:             str_append
        - Src:             'message-address.c:577,5'
          Dst:             i_panic
        - Src:             'message-address.c:580,11'
          Dst:             str_c
        - Src:             'message-address.c:580,22'
          Dst:             str_len
        - Src:             'message-address.c:581,5'
          Dst:             i_panic
        - Src:             'message-address.c:583,24'
          Dst:             str_len
        - Src:             'message-address.c:583,6'
          Dst:             str_truncate
        - Src:             'message-address.c:585,24'
          Dst:             str_len
        - Src:             'message-address.c:585,6'
          Dst:             str_truncate
        - Src:             'message-address.c:586,5'
          Dst:             str_append_c
        - Src:             'message-address.c:592,4'
          Dst:             i_panic
        - Src:             'message-address.c:596,9'
          Dst:             strstr
        - Src:             'message-address.c:600,6'
          Dst:             str_append
        - Src:             'message-address.c:602,6'
          Dst:             str_append_maybe_escape
        - Src:             'message-address.c:608,6'
          Dst:             str_append_c
        - Src:             'message-address.c:609,5'
          Dst:             str_append_c
        - Src:             'message-address.c:611,6'
          Dst:             str_append
        - Src:             'message-address.c:612,6'
          Dst:             str_append_c
        - Src:             'message-address.c:615,6'
          Dst:             str_append
        - Src:             'message-address.c:617,6'
          Dst:             str_append_maybe_escape
        - Src:             'message-address.c:619,6'
          Dst:             str_append_c
        - Src:             'message-address.c:620,6'
          Dst:             str_append
        - Src:             'message-address.c:622,5'
          Dst:             str_append_c
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - 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:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_maybe_escape
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - dest
        - cstr
        - escape_dot
      BBCount:         45
      ICount:          244
      EdgeCount:       59
      CyclomaticComplexity: 16
      functionsReached:
        - str_append_c
        - str_append_data
      functionUses:    3
      BranchProfiles:
        - Branch String:   'message-address.c:41,2'
          Branch Sides:
            - BranchSide:      'message-address.c:42,8'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
            - BranchSide:      'message-address.c:46,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
        - Branch String:   'message-address.c:42,21'
          Branch Sides:
            - BranchSide:      'message-address.c:42,25'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
            - BranchSide:      'message-address.c:44,2'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
        - Branch String:   'message-address.c:42,36'
          Branch Sides:
            - BranchSide:      'message-address.c:42,40'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
            - BranchSide:      'message-address.c:43,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
        - Branch String:   'message-address.c:42,7'
          Branch Sides:
            - BranchSide:      'message-address.c:43,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
            - BranchSide:      'message-address.c:44,2'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_data.2320
        - Branch String:   'message-address.c:46,6'
          Branch Sides:
            - BranchSide:      'message-address.c:47,19'
              BranchSideFuncs:
                - str_append_data.2320
            - BranchSide:      'message-address.c:52,11'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
        - Branch String:   'message-address.c:52,2'
          Branch Sides:
            - BranchSide:      'message-address.c:53,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
            - BranchSide:      'message-address.c:57,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
        - Branch String:   'message-address.c:53,7'
          Branch Sides:
            - BranchSide:      'message-address.c:53,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
            - BranchSide:      'message-address.c:54,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
        - Branch String:   'message-address.c:53,7'
          Branch Sides:
            - BranchSide:      'message-address.c:53,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
            - BranchSide:      'message-address.c:54,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
        - Branch String:   'message-address.c:53,7'
          Branch Sides:
            - BranchSide:      'message-address.c:54,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
            - BranchSide:      'message-address.c:55,2'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
        - Branch String:   'message-address.c:57,6'
          Branch Sides:
            - BranchSide:      'message-address.c:59,3'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
            - BranchSide:      'message-address.c:66,2'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_data.2320
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
        - Branch String:   'message-address.c:69,2'
          Branch Sides:
            - BranchSide:      'message-address.c:70,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:75,2'
              BranchSideFuncs:
                - str_append_c.2335
        - Branch String:   'message-address.c:70,7'
          Branch Sides:
            - BranchSide:      'message-address.c:70,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:71,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
        - Branch String:   'message-address.c:70,7'
          Branch Sides:
            - BranchSide:      'message-address.c:70,7'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:71,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
        - Branch String:   'message-address.c:70,7'
          Branch Sides:
            - BranchSide:      'message-address.c:71,4'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
            - BranchSide:      'message-address.c:72,3'
              BranchSideFuncs:
                - str_append_c.2335
                - str_append_c.2335
                - str_append_c.2335
      Callsites:
        - Src:             'message-address.c:47,3'
          Dst:             str_append_data
        - Src:             'message-address.c:59,3'
          Dst:             str_append_c
        - Src:             'message-address.c:60,3'
          Dst:             str_append_data
        - Src:             'message-address.c:61,3'
          Dst:             str_append_c
        - Src:             'message-address.c:66,2'
          Dst:             str_append_c
        - Src:             'message-address.c:67,2'
          Dst:             str_append_data
        - Src:             'message-address.c:71,4'
          Dst:             str_append_c
        - Src:             'message-address.c:72,3'
          Dst:             str_append_c
        - Src:             'message-address.c:75,2'
          Dst:             str_append_c
    - functionName:    message_address_parse_path_real
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - data
        - size
        - addr_r
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_path
        - rfc822_parser_deinit
        - rfc822_parser_init
        - str_free
        - str_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'message-address.c:480,2'
          Dst:             rfc822_parser_init
        - Src:             'message-address.c:482,12'
          Dst:             str_new
        - Src:             'message-address.c:484,8'
          Dst:             parse_path
        - Src:             'message-address.c:486,2'
          Dst:             rfc822_parser_deinit
        - Src:             'message-address.c:487,2'
          Dst:             str_free
    - functionName:    message_address_parse_path
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - data
        - size
        - addr_r
      BBCount:         12
      ICount:          77
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - message_address_parse_path_real
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'message-address.c:522,6'
          Branch Sides:
            - BranchSide:      'message-address.c:523,42'
              BranchSideFuncs:
                - message_address_parse_path_real
            - BranchSide:      'message-address.c:525,2'
              BranchSideFuncs:
                - t_push
                - message_address_parse_path_real
                - t_pop
                - i_panic
        - Branch String:   'message-address.c:527,4'
          Branch Sides:
            - BranchSide:      'message-address.c:527,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:527,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-address.c:523,10'
          Dst:             message_address_parse_path_real
        - Src:             'message-address.c:525,2'
          Dst:             t_push
        - Src:             'message-address.c:526,9'
          Dst:             message_address_parse_path_real
        - Src:             'message-address.c:527,4'
          Dst:             t_pop
        - Src:             'message-address.c:527,4'
          Dst:             i_panic
    - functionName:    message_address_parse_real
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - data
        - size
        - max_addresses
        - flags
        - list_r
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_address_list
        - rfc822_parser_deinit
        - rfc822_parser_init
        - rfc822_skip_lwsp
        - str_free
        - str_new
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'message-address.c:460,6'
          Branch Sides:
            - BranchSide:      'message-address.c:462,2'
              BranchSideFuncs:
                - rfc822_parser_deinit
                - str_free
            - BranchSide:      'message-address.c:463,34'
              BranchSideFuncs:
                - parse_address_list
                - rfc822_parser_deinit
                - str_free
      Callsites:
        - Src:             'message-address.c:453,46'
          Dst:             t_str_new
        - Src:             'message-address.c:453,2'
          Dst:             rfc822_parser_init
        - Src:             'message-address.c:456,12'
          Dst:             str_new
        - Src:             'message-address.c:460,6'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-address.c:463,9'
          Dst:             parse_address_list
        - Src:             'message-address.c:465,2'
          Dst:             rfc822_parser_deinit
        - Src:             'message-address.c:466,2'
          Dst:             str_free
    - functionName:    message_address_parse_full
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - data
        - size
        - max_addresses
        - flags
        - list_r
      BBCount:         12
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - message_address_parse_real
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-address.c:508,6'
          Branch Sides:
            - BranchSide:      'message-address.c:509,30'
              BranchSideFuncs:
                - message_address_parse_real
            - BranchSide:      'message-address.c:511,9'
              BranchSideFuncs:
                - t_push
                - message_address_parse_real
                - t_pop
                - i_panic
        - Branch String:   'message-address.c:514,4'
          Branch Sides:
            - BranchSide:      'message-address.c:514,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-address.c:514,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-address.c:509,3'
          Dst:             message_address_parse_real
        - Src:             'message-address.c:511,9'
          Dst:             t_push
        - Src:             'message-address.c:512,3'
          Dst:             message_address_parse_real
        - Src:             'message-address.c:514,4'
          Dst:             t_pop
        - Src:             'message-address.c:514,4'
          Dst:             i_panic
    - functionName:    message_address_parse
      functionSourceFile: '/src/dovecot/src/lib-mail/message-address.c'
      linkageType:     externalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - pool
        - data
        - size
        - max_addresses
        - flags
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - message_address_parse_full
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'message-address.c:498,2'
          Dst:             message_address_parse_full
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    parse_timezone
      functionSourceFile: '/src/dovecot/src/lib-mail/message-date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         56
      ICount:          381
      EdgeCount:       75
      CyclomaticComplexity: 21
      functionsReached:
        - __ctype_b_loc
        - toupper
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-date.c:36,15'
          Branch Sides:
            - BranchSide:      'message-date.c:36,20'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:47,6'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
        - Branch String:   'message-date.c:36,31'
          Branch Sides:
            - BranchSide:      'message-date.c:36,35'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:38,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:36,6'
          Branch Sides:
            - BranchSide:      'message-date.c:38,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:47,6'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
        - Branch String:   'message-date.c:38,26'
          Branch Sides:
            - BranchSide:      'message-date.c:38,30'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:40,4'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:38,48'
          Branch Sides:
            - BranchSide:      'message-date.c:39,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:40,4'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:39,26'
          Branch Sides:
            - BranchSide:      'message-date.c:39,30'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'message-date.c:40,4'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:38,7'
          Branch Sides:
            - BranchSide:      'message-date.c:40,4'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:42,14'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:44,10'
          Branch Sides:
            - BranchSide:      'message-date.c:44,24'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:44,34'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:47,6'
          Branch Sides:
            - BranchSide:      'message-date.c:51,9'
              BranchSideFuncs:
                - toupper
            - BranchSide:      'message-date.c:63,6'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
        - Branch String:   'message-date.c:52,7'
          Branch Sides:
            - BranchSide:      'message-date.c:53,13'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:54,7'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:54,7'
          Branch Sides:
            - BranchSide:      'message-date.c:55,4'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:56,7'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:56,7'
          Branch Sides:
            - BranchSide:      'message-date.c:57,13'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:58,7'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:58,7'
          Branch Sides:
            - BranchSide:      'message-date.c:59,17'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:60,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:63,15'
          Branch Sides:
            - BranchSide:      'message-date.c:63,18'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
                - toupper
                - toupper
            - BranchSide:      'message-date.c:68,6'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
        - Branch String:   'message-date.c:63,43'
          Branch Sides:
            - BranchSide:      'message-date.c:63,46'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
                - toupper
            - BranchSide:      'message-date.c:68,6'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
        - Branch String:   'message-date.c:63,6'
          Branch Sides:
            - BranchSide:      'message-date.c:65,3'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:68,6'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
        - Branch String:   'message-date.c:68,6'
          Branch Sides:
            - BranchSide:      'message-date.c:70,7'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
            - BranchSide:      'message-date.c:97,2'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:70,7'
          Branch Sides:
            - BranchSide:      'message-date.c:71,4'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:73,11'
              BranchSideFuncs:
                - toupper
                - toupper
                - toupper
        - Branch String:   'message-date.c:73,3'
          Branch Sides:
            - BranchSide:      'message-date.c:75,11'
              BranchSideFuncs:
                - toupper
                - toupper
            - BranchSide:      'message-date.c:78,11'
              BranchSideFuncs:
                - toupper
                - toupper
            - BranchSide:      'message-date.c:81,11'
              BranchSideFuncs:
                - toupper
                - toupper
            - BranchSide:      'message-date.c:84,11'
              BranchSideFuncs:
                - toupper
                - toupper
            - BranchSide:      'message-date.c:88,4'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:91,7'
          Branch Sides:
            - BranchSide:      'message-date.c:92,11'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:93,7'
              BranchSideFuncs:
                - toupper
        - Branch String:   'message-date.c:93,7'
          Branch Sides:
            - BranchSide:      'message-date.c:94,11'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:95,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-date.c:38,8'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:38,30'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:39,8'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:39,30'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:51,9'
          Dst:             toupper
        - Src:             'message-date.c:63,18'
          Dst:             toupper
        - Src:             'message-date.c:63,46'
          Dst:             toupper
        - Src:             'message-date.c:73,11'
          Dst:             toupper
        - Src:             'message-date.c:91,7'
          Dst:             toupper
        - Src:             'message-date.c:93,7'
          Dst:             toupper
    - functionName:    toupper
      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:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    next_token
      functionSourceFile: '/src/dovecot/src/lib-mail/message-date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - value
        - value_len
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - rfc822_parse_atom
        - str_data
        - str_len
        - str_truncate
      functionUses:    8
      BranchProfiles:
        - Branch String:   'message-date.c:106,8'
          Branch Sides:
            - BranchSide:      'message-date.c:106,6'
              BranchSideFuncs:
                - str_data.2393
                - str_len.2392
            - BranchSide:      'message-date.c:107,22'
              BranchSideFuncs:
                - rfc822_parse_atom
                - str_data.2393
                - str_len.2392
        - Branch String:   'message-date.c:111,9'
          Branch Sides:
            - BranchSide:      'message-date.c:111,9'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:111,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-date.c:105,2'
          Dst:             str_truncate
        - Src:             'message-date.c:107,3'
          Dst:             rfc822_parse_atom
        - Src:             'message-date.c:109,11'
          Dst:             str_data
        - Src:             'message-date.c:110,15'
          Dst:             str_len
    - functionName:    message_date_create
      functionSourceFile: '/src/dovecot/src/lib-mail/message-date.c'
      linkageType:     externalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - timestamp
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - localtime
        - t_strdup_printf
        - utc_offset
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-date.c:269,6'
          Branch Sides:
            - BranchSide:      'message-date.c:270,12'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'message-date.c:272,12'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'message-date.c:267,7'
          Dst:             localtime
        - Src:             'message-date.c:268,11'
          Dst:             utc_offset
        - Src:             'message-date.c:276,9'
          Dst:             t_strdup_printf
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfc822_parser_deinit
      functionSourceFile: '/src/dovecot/src/lib-mail/./rfc822-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         7
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './rfc822-parser.h:31,2'
          Branch Sides:
            - BranchSide:      './rfc822-parser.h:31,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './rfc822-parser.h:31,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './rfc822-parser.h:31,2'
          Dst:             i_panic
    - functionName:    message_date_parser_tokens
      functionSourceFile: '/src/dovecot/src/lib-mail/message-date.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - timestamp_r
        - timezone_offset_r
      BBCount:         113
      ICount:          743
      EdgeCount:       157
      CyclomaticComplexity: 46
      functionsReached:
        - __ctype_b_loc
        - i_memcasecmp
        - next_token
        - parse_timezone
        - rfc822_skip_lwsp
        - utc_mktime
      functionUses:    1
      BranchProfiles:
        - Branch String:   'message-date.c:129,6'
          Branch Sides:
            - BranchSide:      'message-date.c:130,3'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:131,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
        - Branch String:   'message-date.c:131,6'
          Branch Sides:
            - BranchSide:      'message-date.c:132,8'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
                - __ctype_b_loc
            - BranchSide:      'message-date.c:142,6'
              BranchSideFuncs:
                - __ctype_b_loc
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
                - __ctype_b_loc
        - Branch String:   'message-date.c:132,7'
          Branch Sides:
            - BranchSide:      'message-date.c:133,4'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:134,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
                - __ctype_b_loc
        - Branch String:   'message-date.c:137,7'
          Branch Sides:
            - BranchSide:      'message-date.c:138,4'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:139,2'
              BranchSideFuncs:
                - __ctype_b_loc
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
                - __ctype_b_loc
        - Branch String:   'message-date.c:142,14'
          Branch Sides:
            - BranchSide:      'message-date.c:142,17'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:143,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:142,25'
          Branch Sides:
            - BranchSide:      'message-date.c:142,29'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:143,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:142,6'
          Branch Sides:
            - BranchSide:      'message-date.c:143,3'
              BranchSideFuncs:
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
                - __ctype_b_loc
            - BranchSide:      'message-date.c:145,15'
              BranchSideFuncs:
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
                - __ctype_b_loc
        - Branch String:   'message-date.c:146,6'
          Branch Sides:
            - BranchSide:      'message-date.c:147,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
            - BranchSide:      'message-date.c:153,17'
              BranchSideFuncs:
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
        - Branch String:   'message-date.c:147,7'
          Branch Sides:
            - BranchSide:      'message-date.c:148,4'
              BranchSideFuncs:
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
            - BranchSide:      'message-date.c:149,20'
              BranchSideFuncs:
                - next_token
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
        - Branch String:   'message-date.c:153,41'
          Branch Sides:
            - BranchSide:      'message-date.c:153,44'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:154,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:153,6'
          Branch Sides:
            - BranchSide:      'message-date.c:154,3'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:156,9'
              BranchSideFuncs:
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
        - Branch String:   'message-date.c:156,2'
          Branch Sides:
            - BranchSide:      'message-date.c:157,32'
              BranchSideFuncs:
                - i_memcasecmp
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:162,6'
              BranchSideFuncs:
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:157,7'
          Branch Sides:
            - BranchSide:      'message-date.c:158,16'
              BranchSideFuncs:
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:161,2'
              BranchSideFuncs:
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - i_memcasecmp
        - Branch String:   'message-date.c:162,6'
          Branch Sides:
            - BranchSide:      'message-date.c:163,3'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:166,17'
              BranchSideFuncs:
                - next_token
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:166,41'
          Branch Sides:
            - BranchSide:      'message-date.c:166,45'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:167,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:166,54'
          Branch Sides:
            - BranchSide:      'message-date.c:166,57'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:169,9'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:166,6'
          Branch Sides:
            - BranchSide:      'message-date.c:167,3'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:169,9'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:169,2'
          Branch Sides:
            - BranchSide:      'message-date.c:170,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:175,6'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:170,7'
          Branch Sides:
            - BranchSide:      'message-date.c:171,4'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:172,19'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:175,6'
          Branch Sides:
            - BranchSide:      'message-date.c:177,10'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:180,10'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:177,7'
          Branch Sides:
            - BranchSide:      'message-date.c:178,7'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:179,2'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:180,7'
          Branch Sides:
            - BranchSide:      'message-date.c:181,4'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:182,6'
              BranchSideFuncs:
                - next_token
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:186,41'
          Branch Sides:
            - BranchSide:      'message-date.c:187,6'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:188,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:187,14'
          Branch Sides:
            - BranchSide:      'message-date.c:187,17'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:188,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:187,25'
          Branch Sides:
            - BranchSide:      'message-date.c:187,29'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:188,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:186,6'
          Branch Sides:
            - BranchSide:      'message-date.c:188,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:189,15'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:190,6'
          Branch Sides:
            - BranchSide:      'message-date.c:191,8'
              BranchSideFuncs:
                - __ctype_b_loc
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:197,7'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:191,7'
          Branch Sides:
            - BranchSide:      'message-date.c:192,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:193,19'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:197,7'
          Branch Sides:
            - BranchSide:      'message-date.c:197,7'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:199,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:197,6'
          Branch Sides:
            - BranchSide:      'message-date.c:198,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:199,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:202,40'
          Branch Sides:
            - BranchSide:      'message-date.c:202,43'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:204,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:202,52'
          Branch Sides:
            - BranchSide:      'message-date.c:203,7'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:204,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:203,27'
          Branch Sides:
            - BranchSide:      'message-date.c:203,31'
              BranchSideFuncs:
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:204,3'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:202,6'
          Branch Sides:
            - BranchSide:      'message-date.c:204,3'
              BranchSideFuncs:
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:205,15'
              BranchSideFuncs:
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
        - Branch String:   'message-date.c:208,41'
          Branch Sides:
            - BranchSide:      'message-date.c:209,6'
              BranchSideFuncs:
                - next_token
                - parse_timezone
                - utc_mktime
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
            - BranchSide:      'message-date.c:219,24'
              BranchSideFuncs:
                - next_token
                - parse_timezone
                - utc_mktime
        - Branch String:   'message-date.c:209,6'
          Branch Sides:
            - BranchSide:      'message-date.c:209,6'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
            - BranchSide:      'message-date.c:210,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
        - Branch String:   'message-date.c:208,6'
          Branch Sides:
            - BranchSide:      'message-date.c:210,3'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - next_token
                - __ctype_b_loc
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
            - BranchSide:      'message-date.c:219,24'
              BranchSideFuncs:
                - next_token
                - parse_timezone
                - utc_mktime
        - Branch String:   'message-date.c:213,42'
          Branch Sides:
            - BranchSide:      'message-date.c:213,45'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:215,4'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:213,54'
          Branch Sides:
            - BranchSide:      'message-date.c:214,8'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:215,4'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:214,28'
          Branch Sides:
            - BranchSide:      'message-date.c:214,32'
              BranchSideFuncs:
                - __ctype_b_loc
                - next_token
                - parse_timezone
                - utc_mktime
            - BranchSide:      'message-date.c:215,4'
              BranchSideFuncs: []
        - Branch String:   'message-date.c:213,7'
          Branch Sides:
            - BranchSide:      'message-date.c:215,4'
              BranchSideFuncs:
                - next_token
                - parse_timezone
                - utc_mktime
            - BranchSide:      'message-date.c:216,16'
              BranchSideFuncs:
                - next_token
                - parse_timezone
                - utc_mktime
        - Branch String:   'message-date.c:219,6'
          Branch Sides:
            - BranchSide:      'message-date.c:220,3'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:221,6'
              BranchSideFuncs:
                - parse_timezone
                - utc_mktime
        - Branch String:   'message-date.c:221,6'
          Branch Sides:
            - BranchSide:      'message-date.c:223,4'
              BranchSideFuncs:
                - utc_mktime
            - BranchSide:      'message-date.c:230,39'
              BranchSideFuncs:
                - parse_timezone
                - utc_mktime
        - Branch String:   'message-date.c:235,6'
          Branch Sides:
            - BranchSide:      'message-date.c:236,3'
              BranchSideFuncs: []
            - BranchSide:      'message-date.c:238,19'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-date.c:126,9'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-date.c:129,6'
          Dst:             next_token
        - Src:             'message-date.c:135,3'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-date.c:137,7'
          Dst:             next_token
        - Src:             'message-date.c:142,29'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:147,8'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:153,6'
          Dst:             next_token
        - Src:             'message-date.c:157,7'
          Dst:             i_memcasecmp
        - Src:             'message-date.c:166,6'
          Dst:             next_token
        - Src:             'message-date.c:170,8'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:186,6'
          Dst:             next_token
        - Src:             'message-date.c:187,29'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:191,8'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:200,2'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-date.c:202,6'
          Dst:             next_token
        - Src:             'message-date.c:203,7'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:203,31'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:211,3'
          Dst:             rfc822_skip_lwsp
        - Src:             'message-date.c:213,7'
          Dst:             next_token
        - Src:             'message-date.c:214,8'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:214,32'
          Dst:             __ctype_b_loc
        - Src:             'message-date.c:219,13'
          Dst:             next_token
        - Src:             'message-date.c:230,24'
          Dst:             parse_timezone
        - Src:             'message-date.c:234,17'
          Dst:             utc_mktime
    - functionName:    message_date_parse
      functionSourceFile: '/src/dovecot/src/lib-mail/message-date.c'
      linkageType:     externalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - timestamp_r
        - timezone_offset_r
      BBCount:         9
      ICount:          67
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - message_date_parser_tokens
        - rfc822_parser_deinit
        - rfc822_parser_init
        - t_pop
        - t_push
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'message-date.c:256,4'
          Branch Sides:
            - BranchSide:      'message-date.c:256,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'message-date.c:256,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'message-date.c:248,2'
          Dst:             t_push
        - Src:             'message-date.c:251,3'
          Dst:             rfc822_parser_init
        - Src:             'message-date.c:252,13'
          Dst:             t_str_new
        - Src:             'message-date.c:253,13'
          Dst:             message_date_parser_tokens
        - Src:             'message-date.c:255,3'
          Dst:             rfc822_parser_deinit
        - Src:             'message-date.c:256,4'
          Dst:             t_pop
        - Src:             'message-date.c:256,4'
          Dst:             i_panic
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfc822_parse_content_param
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_r
        - value
      BBCount:         40
      ICount:          263
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - rfc822_parse_mime_token
        - rfc822_parse_quoted_string
        - rfc822_skip_lwsp
        - str_append_c
        - str_c
        - str_truncate
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:528,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:529,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:530,7'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - t_str_new
                - rfc822_parse_mime_token
                - rfc822_skip_lwsp
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:530,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:531,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:532,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - t_str_new
                - rfc822_parse_mime_token
                - rfc822_skip_lwsp
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:534,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:535,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:537,8'
              BranchSideFuncs:
                - t_str_new
                - rfc822_parse_mime_token
                - rfc822_skip_lwsp
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:538,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:539,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:541,7'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:541,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:542,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:543,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:545,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:547,2'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'rfc822-parser.c:547,14'
              BranchSideFuncs:
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:547,13'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:548,36'
              BranchSideFuncs:
                - rfc822_parse_quoted_string
                - str_c
            - BranchSide:      'rfc822-parser.c:549,13'
              BranchSideFuncs:
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
        - Branch String:   'rfc822-parser.c:549,34'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:549,38'
              BranchSideFuncs:
                - rfc822_parse_mime_token
                - str_c
                - str_append_c.2475
            - BranchSide:      'rfc822-parser.c:559,33'
              BranchSideFuncs:
                - rfc822_parse_mime_token
                - str_c
        - Branch String:   'rfc822-parser.c:549,13'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
            - BranchSide:      'rfc822-parser.c:559,33'
              BranchSideFuncs:
                - rfc822_parse_mime_token
                - str_c
        - Branch String:   'rfc822-parser.c:552,31'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,35'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
        - Branch String:   'rfc822-parser.c:552,52'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
            - BranchSide:      'rfc822-parser.c:553,11'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
        - Branch String:   'rfc822-parser.c:553,28'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
            - BranchSide:      'rfc822-parser.c:553,32'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
        - Branch String:   'rfc822-parser.c:553,50'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
            - BranchSide:      'rfc822-parser.c:554,11'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
        - Branch String:   'rfc822-parser.c:554,29'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:552,3'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
            - BranchSide:      'rfc822-parser.c:554,33'
              BranchSideFuncs:
                - str_c
                - str_append_c.2475
        - Branch String:   'rfc822-parser.c:552,3'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:555,4'
              BranchSideFuncs:
                - str_append_c.2475
                - str_c
            - BranchSide:      'rfc822-parser.c:558,2'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'rfc822-parser.c:526,2'
          Dst:             str_truncate
        - Src:             'rfc822-parser.c:534,6'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:537,8'
          Dst:             t_str_new
        - Src:             'rfc822-parser.c:538,6'
          Dst:             rfc822_parse_mime_token
        - Src:             'rfc822-parser.c:545,13'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:548,9'
          Dst:             rfc822_parse_quoted_string
        - Src:             'rfc822-parser.c:555,4'
          Dst:             str_append_c
        - Src:             'rfc822-parser.c:559,9'
          Dst:             rfc822_parse_mime_token
        - Src:             'rfc822-parser.c:562,11'
          Dst:             str_c
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    6
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    rfc822_skip_lwsp
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         21
      ICount:          119
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - rfc822_skip_comment
      functionUses:    28
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:140,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:141,8'
              BranchSideFuncs:
                - rfc822_skip_comment
            - BranchSide:      'rfc822-parser.c:153,9'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:141,25'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:141,29'
              BranchSideFuncs:
                - rfc822_skip_comment
            - BranchSide:      'rfc822-parser.c:143,4'
              BranchSideFuncs:
                - rfc822_skip_comment
        - Branch String:   'rfc822-parser.c:141,47'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:142,8'
              BranchSideFuncs:
                - rfc822_skip_comment
            - BranchSide:      'rfc822-parser.c:143,4'
              BranchSideFuncs:
                - rfc822_skip_comment
        - Branch String:   'rfc822-parser.c:142,26'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:142,30'
              BranchSideFuncs:
                - rfc822_skip_comment
            - BranchSide:      'rfc822-parser.c:143,4'
              BranchSideFuncs:
                - rfc822_skip_comment
        - Branch String:   'rfc822-parser.c:141,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:143,4'
              BranchSideFuncs:
                - rfc822_skip_comment
            - BranchSide:      'rfc822-parser.c:147,8'
              BranchSideFuncs:
                - rfc822_skip_comment
        - Branch String:   'rfc822-parser.c:147,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:148,4'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:150,27'
              BranchSideFuncs:
                - rfc822_skip_comment
        - Branch String:   'rfc822-parser.c:150,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:140,2'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:151,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'rfc822-parser.c:150,7'
          Dst:             rfc822_skip_comment
    - functionName:    rfc822_parse_mime_token
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         13
      ICount:          105
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - rfc822_skip_lwsp
        - str_append_data
      functionUses:    4
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:230,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:231,7'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:238,18'
              BranchSideFuncs:
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:231,41'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:231,45'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:232,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:231,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:232,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:234,19'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
      Callsites:
        - Src:             'rfc822-parser.c:234,3'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:235,10'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:238,2'
          Dst:             str_append_data
    - functionName:    rfc822_parse_quoted_string
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         39
      ICount:          291
      EdgeCount:       46
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - rfc822_skip_lwsp
        - str_append
        - str_append_data
      functionUses:    3
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:247,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:247,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:248,2'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
                - i_panic
        - Branch String:   'rfc822-parser.c:248,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:248,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:249,2'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:251,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:252,12'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:292,2'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:252,3'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:254,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:261,20'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:266,10'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:273,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:289,2'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:254,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:255,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:259,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:267,16'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:267,19'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:269,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:267,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:268,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:269,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:274,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:275,5'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:277,9'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:277,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:277,31'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:282,5'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:277,49'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:278,9'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:282,5'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:277,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:282,5'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:285,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
      Callsites:
        - Src:             'rfc822-parser.c:247,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:248,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:255,5'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:256,5'
          Dst:             str_append
        - Src:             'rfc822-parser.c:261,4'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:263,11'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:269,4'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:285,4'
          Dst:             str_append_data
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    rfc822_skip_comment
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         51
      ICount:          356
      EdgeCount:       64
      CyclomaticComplexity: 15
      functionsReached:
        - i_panic
        - str_append
        - str_append_data
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:71,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:71,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:73,6'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
                - str_truncate.2470
        - Branch String:   'rfc822-parser.c:73,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:74,16'
              BranchSideFuncs:
                - str_truncate.2470
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:76,12'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:77,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:78,12'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:135,2'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:78,3'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:80,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:90,9'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:93,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:104,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:113,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:132,2'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:80,34'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:81,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:88,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:80,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:82,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:88,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:93,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:94,9'
              BranchSideFuncs:
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:101,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:94,9'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:95,22'
              BranchSideFuncs:
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:98,5'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:104,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:105,5'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:106,10'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:107,16'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:107,19'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:109,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:107,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:108,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:109,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:114,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:115,5'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:117,9'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:117,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:117,31'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:122,5'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:117,49'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:118,9'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:122,5'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:117,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:122,5'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:125,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:125,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:126,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:129,12'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - str_append.2481
      Callsites:
        - Src:             'rfc822-parser.c:71,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:74,3'
          Dst:             str_truncate
        - Src:             'rfc822-parser.c:82,5'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:84,5'
          Dst:             str_append
        - Src:             'rfc822-parser.c:95,6'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:109,4'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:126,5'
          Dst:             str_append_data
    - functionName:    rfc822_parse_content_type
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         25
      ICount:          164
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - rfc822_parse_mime_token
        - rfc822_skip_lwsp
        - str_append_c
        - str_truncate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:480,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:481,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:484,30'
              BranchSideFuncs:
                - rfc822_parse_mime_token
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_parse_mime_token
                - str_truncate.2470
                - str_truncate.2470
                - str_truncate.2470
        - Branch String:   'rfc822-parser.c:484,45'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:485,6'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:486,3'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:484,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:486,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:489,7'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_parse_mime_token
                - str_truncate.2470
                - str_truncate.2470
                - str_truncate.2470
        - Branch String:   'rfc822-parser.c:489,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:490,16'
              BranchSideFuncs:
                - str_truncate.2470
            - BranchSide:      'rfc822-parser.c:493,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_parse_mime_token
                - str_truncate.2470
                - str_truncate.2470
        - Branch String:   'rfc822-parser.c:494,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:495,16'
              BranchSideFuncs:
                - str_truncate.2470
            - BranchSide:      'rfc822-parser.c:498,2'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_parse_mime_token
                - str_truncate.2470
        - Branch String:   'rfc822-parser.c:505,52'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:506,6'
              BranchSideFuncs:
                - str_truncate.2470
            - BranchSide:      'rfc822-parser.c:508,16'
              BranchSideFuncs:
                - str_truncate.2470
        - Branch String:   'rfc822-parser.c:506,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:507,7'
              BranchSideFuncs:
                - str_truncate.2470
            - BranchSide:      'rfc822-parser.c:508,16'
              BranchSideFuncs:
                - str_truncate.2470
        - Branch String:   'rfc822-parser.c:507,29'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:507,33'
              BranchSideFuncs:
                - str_truncate.2470
            - BranchSide:      'rfc822-parser.c:511,9'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:505,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:508,16'
              BranchSideFuncs:
                - str_truncate.2470
            - BranchSide:      'rfc822-parser.c:511,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'rfc822-parser.c:480,6'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:484,6'
          Dst:             rfc822_parse_mime_token
        - Src:             'rfc822-parser.c:490,3'
          Dst:             str_truncate
        - Src:             'rfc822-parser.c:494,6'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:495,3'
          Dst:             str_truncate
        - Src:             'rfc822-parser.c:498,2'
          Dst:             str_append_c
        - Src:             'rfc822-parser.c:505,13'
          Dst:             rfc822_parse_mime_token
        - Src:             'rfc822-parser.c:508,3'
          Dst:             str_truncate
    - functionName:    rfc822_parse_domain_literal
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         40
      ICount:          293
      EdgeCount:       47
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - rfc822_skip_lwsp
        - str_append
        - str_append_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:366,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:366,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:367,2'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
                - i_panic
        - Branch String:   'rfc822-parser.c:367,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:367,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:369,15'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:369,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:370,12'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:413,2'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:370,3'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:372,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:380,4'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:382,20'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:387,10'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:395,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:410,2'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:372,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:373,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:377,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:388,16'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:388,19'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:390,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:388,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:389,8'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:390,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:396,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:397,5'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:399,9'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:399,27'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:399,31'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:404,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:399,49'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:400,9'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:404,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
        - Branch String:   'rfc822-parser.c:399,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:404,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
            - BranchSide:      'rfc822-parser.c:409,3'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
                - str_append.2481
      Callsites:
        - Src:             'rfc822-parser.c:366,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:367,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:373,5'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:374,5'
          Dst:             str_append
        - Src:             'rfc822-parser.c:382,4'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:384,11'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:390,4'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:404,5'
          Dst:             str_append_data
    - functionName:    rfc822_parse_domain
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         16
      ICount:          104
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - rfc822_parse_domain_literal
        - rfc822_parse_dot_atom
        - rfc822_skip_lwsp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:451,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:451,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:452,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - rfc822_parse_dot_atom
                - rfc822_parse_domain_literal
                - i_panic
        - Branch String:   'rfc822-parser.c:452,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:452,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:453,2'
              BranchSideFuncs:
                - rfc822_skip_lwsp
                - rfc822_parse_dot_atom
                - rfc822_parse_domain_literal
        - Branch String:   'rfc822-parser.c:455,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:456,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:458,7'
              BranchSideFuncs:
                - rfc822_parse_dot_atom
                - rfc822_parse_domain_literal
        - Branch String:   'rfc822-parser.c:458,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:459,38'
              BranchSideFuncs:
                - rfc822_parse_domain_literal
            - BranchSide:      'rfc822-parser.c:461,35'
              BranchSideFuncs:
                - rfc822_parse_dot_atom
      Callsites:
        - Src:             'rfc822-parser.c:451,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:452,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:455,6'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:459,10'
          Dst:             rfc822_parse_domain_literal
        - Src:             'rfc822-parser.c:461,13'
          Dst:             rfc822_parse_dot_atom
    - functionName:    rfc822_parse_dot_atom
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         26
      ICount:          192
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - rfc822_skip_lwsp
        - str_append_c
        - str_append_data
      functionUses:    2
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:194,28'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:194,32'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:195,3'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:194,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:195,3'
              BranchSideFuncs:
                - str_append_data.2480
                - i_panic
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:197,15'
              BranchSideFuncs:
                - str_append_data.2480
                - i_panic
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:197,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:198,7'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_skip_lwsp
                - str_append_data.2480
                - i_panic
            - BranchSide:      'rfc822-parser.c:221,2'
              BranchSideFuncs:
                - str_append_data.2480
                - i_panic
        - Branch String:   'rfc822-parser.c:198,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:199,4'
              BranchSideFuncs:
                - str_append_data.2480
                - i_panic
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:203,7'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_skip_lwsp
                - str_append_data.2480
                - i_panic
        - Branch String:   'rfc822-parser.c:203,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:204,4'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:205,19'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_skip_lwsp
                - str_append_data.2480
                - i_panic
        - Branch String:   'rfc822-parser.c:207,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:208,11'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:210,8'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_skip_lwsp
                - str_append_data.2480
                - i_panic
                - str_append_data.2480
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:210,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:211,4'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:213,3'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_skip_lwsp
                - str_append_data.2480
                - i_panic
                - str_append_data.2480
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:216,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:217,4'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:218,11'
              BranchSideFuncs:
                - str_append_data.2480
                - i_panic
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_c.2475
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:221,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:221,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rfc822-parser.c:222,18'
              BranchSideFuncs:
                - str_append_data.2480
      Callsites:
        - Src:             'rfc822-parser.c:205,3'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:207,14'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:214,3'
          Dst:             str_append_c
        - Src:             'rfc822-parser.c:216,7'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:221,2'
          Dst:             i_panic
        - Src:             'rfc822-parser.c:222,2'
          Dst:             str_append_data
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-mail/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfc822_decode_punycode
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - len
        - result
      BBCount:         31
      ICount:          178
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - punycode_decode
        - str_append_c
        - str_append_data
        - str_begins
        - str_begins_builtin_success
        - str_truncate
        - strchr
        - strncmp
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:422,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:424,30'
              BranchSideFuncs:
                - strchr
                - str_begins
                - str_append_data.2480
                - str_append_data.2480
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
            - BranchSide:      'rfc822-parser.c:440,6'
              BranchSideFuncs:
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:425,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:426,12'
              BranchSideFuncs:
                - str_begins
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_begins
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.2493
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_begins
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_begins
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - strncmp
                - str_begins_builtin_success.2493
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:428,17'
              BranchSideFuncs:
                - str_truncate.2470
                - punycode_decode
                - str_append_data.2480
                - strchr
                - str_begins
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
                - str_append_c.2475
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:436,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_begins
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_truncate.2470
                - punycode_decode
                - str_append_data.2480
                - strchr
                - str_begins
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
                - str_append_c.2475
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:427,7'
              BranchSideFuncs:
                - str_begins_builtin_success.2493
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_begins
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:428,17'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_begins
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
            - BranchSide:      'rfc822-parser.c:436,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_begins
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
        - Branch String:   'rfc822-parser.c:427,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:428,17'
              BranchSideFuncs:
                - str_truncate.2470
                - punycode_decode
                - str_append_data.2480
                - strchr
                - str_begins
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
                - str_append_c.2475
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:436,20'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_begins
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
        - Branch String:   'rfc822-parser.c:429,8'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:431,21'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - strchr
                - str_begins
                - str_append_data.2480
                - str_truncate.2470
                - punycode_decode
                - str_append_c.2475
                - strncmp
                - str_begins_builtin_success.2493
            - BranchSide:      'rfc822-parser.c:432,14'
              BranchSideFuncs:
                - str_append_data.2480
                - strchr
                - str_begins
                - str_append_data.2480
                - str_truncate.2470
                - punycode_decode
                - str_append_data.2480
                - strncmp
                - str_begins_builtin_success.2493
                - str_append_c.2475
        - Branch String:   'rfc822-parser.c:440,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:440,6'
              BranchSideFuncs:
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:441,19'
              BranchSideFuncs:
                - str_append_data.2480
      Callsites:
        - Src:             'rfc822-parser.c:418,22'
          Dst:             t_str_new
        - Src:             'rfc822-parser.c:424,23'
          Dst:             strchr
        - Src:             'rfc822-parser.c:427,7'
          Dst:             str_begins
        - Src:             'rfc822-parser.c:427,7'
          Dst:             strncmp
        - Src:             'rfc822-parser.c:427,7'
          Dst:             str_begins_builtin_success
        - Src:             'rfc822-parser.c:428,4'
          Dst:             str_truncate
        - Src:             'rfc822-parser.c:429,8'
          Dst:             punycode_decode
        - Src:             'rfc822-parser.c:431,5'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:433,5'
          Dst:             str_append_c
        - Src:             'rfc822-parser.c:436,4'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:441,3'
          Dst:             str_append_data
    - functionName:    strncmp
      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:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rfc822_parse_atom_or_dot
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - rfc822_skip_lwsp
        - str_append_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:308,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:309,7'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:316,18'
              BranchSideFuncs:
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:309,28'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:309,32'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:310,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:309,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:310,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:312,19'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
      Callsites:
        - Src:             'rfc822-parser.c:312,3'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:313,10'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:316,2'
          Dst:             str_append_data
    - functionName:    rfc822_parse_phrase
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         22
      ICount:          133
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - rfc822_parse_atom_or_dot
        - rfc822_parse_quoted_string
        - rfc822_skip_lwsp
        - str_append_c
      functionUses:    3
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:330,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:331,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:332,7'
              BranchSideFuncs:
                - rfc822_parse_atom_or_dot
                - str_append_c.2475
                - rfc822_skip_lwsp
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:332,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:333,3'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:335,2'
              BranchSideFuncs:
                - rfc822_parse_atom_or_dot
                - str_append_c.2475
                - rfc822_skip_lwsp
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:336,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:337,37'
              BranchSideFuncs:
                - rfc822_parse_quoted_string
                - str_append_c.2475
                - rfc822_parse_atom_or_dot
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:339,35'
              BranchSideFuncs:
                - rfc822_parse_atom_or_dot
                - str_append_c.2475
                - rfc822_parse_quoted_string
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:341,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:342,11'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:344,8'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_parse_atom_or_dot
                - rfc822_parse_quoted_string
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:344,29'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:344,33'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_parse_atom_or_dot
                - rfc822_skip_lwsp
                - rfc822_parse_quoted_string
            - BranchSide:      'rfc822-parser.c:347,3'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_parse_atom_or_dot
                - rfc822_skip_lwsp
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:345,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:345,11'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_parse_atom_or_dot
                - rfc822_parse_quoted_string
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:347,3'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_parse_atom_or_dot
                - rfc822_skip_lwsp
                - rfc822_parse_quoted_string
        - Branch String:   'rfc822-parser.c:344,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:346,4'
              BranchSideFuncs:
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:347,3'
              BranchSideFuncs:
                - str_append_c.2475
                - rfc822_parse_atom_or_dot
                - rfc822_skip_lwsp
                - rfc822_parse_quoted_string
      Callsites:
        - Src:             'rfc822-parser.c:337,10'
          Dst:             rfc822_parse_quoted_string
        - Src:             'rfc822-parser.c:339,10'
          Dst:             rfc822_parse_atom_or_dot
        - Src:             'rfc822-parser.c:347,3'
          Dst:             str_append_c
        - Src:             'rfc822-parser.c:349,9'
          Dst:             rfc822_skip_lwsp
    - functionName:    rfc822_parse_atom
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - rfc822_skip_lwsp
        - str_append_data
      functionUses:    2
      BranchProfiles:
        - Branch String:   'rfc822-parser.c:165,28'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:165,32'
              BranchSideFuncs: []
            - BranchSide:      'rfc822-parser.c:166,3'
              BranchSideFuncs: []
        - Branch String:   'rfc822-parser.c:165,6'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:166,3'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:168,15'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
        - Branch String:   'rfc822-parser.c:168,2'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:169,7'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
                - str_append_data.2480
            - BranchSide:      'rfc822-parser.c:176,18'
              BranchSideFuncs:
                - str_append_data.2480
        - Branch String:   'rfc822-parser.c:169,7'
          Branch Sides:
            - BranchSide:      'rfc822-parser.c:170,4'
              BranchSideFuncs:
                - str_append_data.2480
                - str_append_data.2480
                - rfc822_skip_lwsp
            - BranchSide:      'rfc822-parser.c:172,19'
              BranchSideFuncs:
                - str_append_data.2480
                - rfc822_skip_lwsp
      Callsites:
        - Src:             'rfc822-parser.c:172,3'
          Dst:             str_append_data
        - Src:             'rfc822-parser.c:173,10'
          Dst:             rfc822_skip_lwsp
        - Src:             'rfc822-parser.c:176,2'
          Dst:             str_append_data
    - functionName:    rfc822_parser_init
      functionSourceFile: '/src/dovecot/src/lib-mail/rfc822-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - data
        - size
        - last_comment
      BBCount:         1
      ICount:          32
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_peer_cert_fingerprint
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - cert_fp_r
        - pubkey_fp_r
        - error_r
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_channel_binding
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - type
        - data_r
        - error_r
      BBCount:         8
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:436,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:437,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:440,6'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:440,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:441,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:445,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_iostream_get_application_protocol
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_ja3
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_protocol_version
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_protocol_name
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_pfs
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_cipher
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - bits_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    quick_strcmp
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str1
        - str2
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - null_strcmp
      functionUses:    15
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:343,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:344,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:345,21'
              BranchSideFuncs:
                - null_strcmp
      Callsites:
        - Src:             'iostream-ssl.c:345,9'
          Dst:             null_strcmp
    - functionName:    ssl_iostream_settings_equals
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set1
        - set2
      BBCount:         53
      ICount:          349
      EdgeCount:       75
      CyclomaticComplexity: 24
      functionsReached:
        - quick_strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:351,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:352,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:354,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
        - Branch String:   'iostream-ssl.c:354,70'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:355,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:357,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:355,68'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:356,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:357,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:354,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:357,3'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:359,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
        - Branch String:   'iostream-ssl.c:360,35'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:361,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:365,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:362,34'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:363,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:365,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:359,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:365,3'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:367,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
        - Branch String:   'iostream-ssl.c:367,56'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:368,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:369,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:367,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:369,3'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:371,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
        - Branch String:   'iostream-ssl.c:371,60'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:372,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:379,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:372,58'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:373,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:379,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:373,60'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:374,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:379,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:374,56'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:375,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:379,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:375,56'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:376,20'
              BranchSideFuncs:
                - quick_strcmp
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:379,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:377,33'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:378,20'
              BranchSideFuncs:
                - quick_strcmp
            - BranchSide:      'iostream-ssl.c:379,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:371,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:379,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:381,6'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:381,51'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:382,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:387,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:382,59'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:383,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:387,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:383,59'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:384,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:387,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:384,65'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:385,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:387,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:385,45'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:386,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:387,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:381,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:387,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:388,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl.c:354,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:355,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:356,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:359,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:361,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:363,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:367,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:368,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:371,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:372,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:373,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:374,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:375,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:376,7'
          Dst:             quick_strcmp
        - Src:             'iostream-ssl.c:378,7'
          Dst:             quick_strcmp
    - functionName:    ssl_iostream_get_security_string
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_compression
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_server_name
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_peer_username
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_allow_invalid_cert
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_get_last_error
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_check_cert_validity
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - host
        - error_r
      BBCount:         15
      ICount:          78
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ssl_iostream_cert_match_name
        - ssl_iostream_get_last_error
        - ssl_iostream_has_client_cert
        - ssl_iostream_has_valid_client_cert
        - t_strdup
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:292,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:293,37'
              BranchSideFuncs:
                - ssl_iostream_cert_match_name
                - t_strdup_printf
            - BranchSide:      'iostream-ssl.c:301,43'
              BranchSideFuncs:
                - ssl_iostream_cert_match_name
                - t_strdup_printf
        - Branch String:   'iostream-ssl.c:293,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:294,5'
              BranchSideFuncs:
                - ssl_iostream_get_last_error
                - t_strdup
            - BranchSide:      'iostream-ssl.c:296,52'
              BranchSideFuncs:
                - ssl_iostream_get_last_error
                - t_strdup
      Callsites:
        - Src:             'iostream-ssl.c:292,7'
          Dst:             ssl_iostream_has_valid_client_cert
        - Src:             'iostream-ssl.c:293,8'
          Dst:             ssl_iostream_has_client_cert
        - Src:             'iostream-ssl.c:296,24'
          Dst:             ssl_iostream_get_last_error
        - Src:             'iostream-ssl.c:296,15'
          Dst:             t_strdup
        - Src:             'iostream-ssl.c:301,14'
          Dst:             ssl_iostream_cert_match_name
        - Src:             'iostream-ssl.c:302,14'
          Dst:             t_strdup_printf
    - functionName:    ssl_iostream_has_valid_client_cert
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_has_client_cert
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_cert_match_name
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - name
        - reason_r
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_has_handshake_failed
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_is_handshaked
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_change_context
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - ctx
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_set_sni_callback
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - callback
        - context
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_set_handshake_callback
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - callback
        - context
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_handshake
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_set_log_prefix
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_io
        - prefix
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_destroy
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ssl_io
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:222,22'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:222,26'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:223,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl.c:222,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:223,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:225,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_iostream_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ssl_io
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_autocreate_ssl_server
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parameters
        - input
        - output
        - iostream_r
        - error_r
      BBCount:         32
      ICount:          188
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - io_stream_create_ssl_server
        - pool_unref
        - ssl_iostream_context_set_application_protocols
        - ssl_iostream_context_unref
        - ssl_iostream_server_context_cache_get
        - ssl_server_settings_get
        - ssl_server_settings_to_iostream_set
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:188,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:188,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-ssl.c:189,30'
              BranchSideFuncs:
                - ssl_server_settings_get
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:189,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:191,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:192,38'
              BranchSideFuncs:
                - ssl_server_settings_to_iostream_set
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:193,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:193,2'
              BranchSideFuncs:
                - pool_unref.2617
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
            - BranchSide:      'iostream-ssl.c:194,2'
              BranchSideFuncs:
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:194,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:194,2'
              BranchSideFuncs:
                - pool_unref.2617
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
            - BranchSide:      'iostream-ssl.c:196,46'
              BranchSideFuncs:
                - ssl_iostream_server_context_cache_get
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:197,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:197,2'
              BranchSideFuncs:
                - pool_unref.2617
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
            - BranchSide:      'iostream-ssl.c:198,6'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
        - Branch String:   'iostream-ssl.c:198,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:199,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:200,6'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
        - Branch String:   'iostream-ssl.c:200,14'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:200,17'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
            - BranchSide:      'iostream-ssl.c:204,36'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
        - Branch String:   'iostream-ssl.c:200,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:201,50'
              BranchSideFuncs:
                - ssl_iostream_context_set_application_protocols
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
            - BranchSide:      'iostream-ssl.c:204,36'
              BranchSideFuncs:
                - io_stream_create_ssl_server
                - ssl_iostream_context_unref
      Callsites:
        - Src:             'iostream-ssl.c:188,2'
          Dst:             i_panic
        - Src:             'iostream-ssl.c:189,6'
          Dst:             ssl_server_settings_get
        - Src:             'iostream-ssl.c:192,2'
          Dst:             ssl_server_settings_to_iostream_set
        - Src:             'iostream-ssl.c:193,2'
          Dst:             pool_unref
        - Src:             'iostream-ssl.c:194,2'
          Dst:             pool_unref
        - Src:             'iostream-ssl.c:196,8'
          Dst:             ssl_iostream_server_context_cache_get
        - Src:             'iostream-ssl.c:197,2'
          Dst:             pool_unref
        - Src:             'iostream-ssl.c:201,3'
          Dst:             ssl_iostream_context_set_application_protocols
        - Src:             'iostream-ssl.c:204,8'
          Dst:             io_stream_create_ssl_server
        - Src:             'iostream-ssl.c:206,2'
          Dst:             ssl_iostream_context_unref
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_iostream_context_set_application_protocols
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_ctx
        - names
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_create_ssl_server
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - event_parent
        - input
        - output
        - iostream_r
        - error_r
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_context_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ctx
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:104,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:105,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:106,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_stream_autocreate_ssl_client
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - parameters
        - input
        - output
        - iostream_r
        - error_r
      BBCount:         35
      ICount:          230
      EdgeCount:       43
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - io_stream_create_ssl_client
        - p_memdup
        - pool_add_external_ref
        - pool_alloconly_create
        - pool_unref
        - ssl_client_settings_get
        - ssl_client_settings_to_iostream_set
        - ssl_iostream_client_context_cache_get
        - ssl_iostream_context_set_application_protocols
        - ssl_iostream_context_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:142,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:142,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-ssl.c:143,30'
              BranchSideFuncs:
                - ssl_client_settings_get
                - ssl_client_settings_to_iostream_set
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
                - pool_alloconly_create
                - p_memdup
                - pool_add_external_ref
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:143,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:145,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:146,38'
              BranchSideFuncs:
                - ssl_client_settings_to_iostream_set
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
                - pool_alloconly_create
                - p_memdup
                - pool_add_external_ref
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:147,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:148,17'
              BranchSideFuncs:
                - pool_alloconly_create
                - p_memdup
                - pool_add_external_ref
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
                - pool_unref.2617
            - BranchSide:      'iostream-ssl.c:158,2'
              BranchSideFuncs:
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:155,3'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:155,3'
              BranchSideFuncs:
                - pool_unref.2617
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
            - BranchSide:      'iostream-ssl.c:156,9'
              BranchSideFuncs:
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:158,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:158,2'
              BranchSideFuncs:
                - pool_unref.2617
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
            - BranchSide:      'iostream-ssl.c:160,46'
              BranchSideFuncs:
                - ssl_iostream_client_context_cache_get
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
                - pool_unref.2617
        - Branch String:   'iostream-ssl.c:161,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:161,2'
              BranchSideFuncs:
                - pool_unref.2617
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
            - BranchSide:      'iostream-ssl.c:162,6'
              BranchSideFuncs:
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
        - Branch String:   'iostream-ssl.c:162,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:163,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:164,6'
              BranchSideFuncs:
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
        - Branch String:   'iostream-ssl.c:164,14'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:164,17'
              BranchSideFuncs:
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
                - ssl_iostream_context_set_application_protocols
            - BranchSide:      'iostream-ssl.c:168,36'
              BranchSideFuncs:
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
        - Branch String:   'iostream-ssl.c:164,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:165,50'
              BranchSideFuncs:
                - ssl_iostream_context_set_application_protocols
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
            - BranchSide:      'iostream-ssl.c:168,36'
              BranchSideFuncs:
                - io_stream_create_ssl_client
                - ssl_iostream_context_unref
      Callsites:
        - Src:             'iostream-ssl.c:142,2'
          Dst:             i_panic
        - Src:             'iostream-ssl.c:143,6'
          Dst:             ssl_client_settings_get
        - Src:             'iostream-ssl.c:146,2'
          Dst:             ssl_client_settings_to_iostream_set
        - Src:             'iostream-ssl.c:148,17'
          Dst:             pool_alloconly_create
        - Src:             'iostream-ssl.c:151,4'
          Dst:             p_memdup
        - Src:             'iostream-ssl.c:153,3'
          Dst:             pool_add_external_ref
        - Src:             'iostream-ssl.c:155,3'
          Dst:             pool_unref
        - Src:             'iostream-ssl.c:158,2'
          Dst:             pool_unref
        - Src:             'iostream-ssl.c:160,8'
          Dst:             ssl_iostream_client_context_cache_get
        - Src:             'iostream-ssl.c:161,2'
          Dst:             pool_unref
        - Src:             'iostream-ssl.c:165,3'
          Dst:             ssl_iostream_context_set_application_protocols
        - Src:             'iostream-ssl.c:168,8'
          Dst:             io_stream_create_ssl_client
        - Src:             'iostream-ssl.c:172,2'
          Dst:             ssl_iostream_context_unref
    - functionName:    io_stream_create_ssl_client
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - host
        - event_parent
        - flags
        - input
        - output
        - iostream_r
        - error_r
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_context_ref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_iostream_context_init_server
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - ctx_r
        - error_r
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - io_stream_ssl_global_init
        - ssl_module_load
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:86,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:87,23'
              BranchSideFuncs:
                - io_stream_ssl_global_init
            - BranchSide:      'iostream-ssl.c:90,43'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:87,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:88,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:89,2'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:90,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:91,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:92,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl.c:87,7'
          Dst:             ssl_module_load
        - Src:             'iostream-ssl.c:90,6'
          Dst:             io_stream_ssl_global_init
    - functionName:    ssl_module_load
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - error_r
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - lib_atexit_priority
        - module_dir_init
        - module_dir_try_load_missing
        - module_dir_unload
        - ssl_module_unload
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:33,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:35,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:36,18'
              BranchSideFuncs:
                - module_dir_init
                - t_strdup_printf
                - module_dir_unload
                - lib_atexit_priority
        - Branch String:   'iostream-ssl.c:37,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:40,4'
              BranchSideFuncs:
                - lib_atexit_priority
            - BranchSide:      'iostream-ssl.c:48,2'
              BranchSideFuncs:
                - lib_atexit_priority
      Callsites:
        - Src:             'iostream-ssl.c:33,6'
          Dst:             module_dir_try_load_missing
        - Src:             'iostream-ssl.c:36,2'
          Dst:             module_dir_init
        - Src:             'iostream-ssl.c:38,14'
          Dst:             t_strdup_printf
        - Src:             'iostream-ssl.c:41,3'
          Dst:             module_dir_unload
        - Src:             'iostream-ssl.c:48,2'
          Dst:             lib_atexit_priority
        - Src:             'iostream-ssl.c:48,2'
          Dst:             ssl_module_unload
    - functionName:    io_stream_ssl_global_init
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - error_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_module_unload
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 16
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - module_dir_unload
        - ssl_iostream_context_cache_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:14,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:14,2'
              BranchSideFuncs:
                - ssl_iostream_context_cache_free
                - module_dir_unload
            - BranchSide:      'iostream-ssl.c:14,2'
              BranchSideFuncs:
                - ssl_iostream_context_cache_free
                - module_dir_unload
      Callsites:
        - Src:             'iostream-ssl.c:14,2'
          Dst:             ssl_iostream_context_cache_free
        - Src:             'iostream-ssl.c:15,2'
          Dst:             module_dir_unload
    - functionName:    ssl_iostream_context_init_client
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - ctx_r
        - error_r
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - io_stream_ssl_global_init
        - ssl_module_load
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl.c:67,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:68,23'
              BranchSideFuncs:
                - io_stream_ssl_global_init
            - BranchSide:      'iostream-ssl.c:71,43'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:68,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:69,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:70,2'
              BranchSideFuncs:
                - io_stream_ssl_global_init
        - Branch String:   'iostream-ssl.c:71,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl.c:72,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl.c:73,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl.c:68,7'
          Dst:             ssl_module_load
        - Src:             'iostream-ssl.c:71,6'
          Dst:             io_stream_ssl_global_init
    - functionName:    iostream_ssl_module_init
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl.c'
      linkageType:     externalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - vfuncs
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    ssl_iostream_context_cache_cmp
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - c1
        - c2
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ssl_iostream_settings_equals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:48,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:49,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:50,38'
              BranchSideFuncs:
                - ssl_iostream_settings_equals
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:50,9'
          Dst:             ssl_iostream_settings_equals
    - functionName:    ssl_iostream_context_cache_hash
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cache
      BBCount:         17
      ICount:          145
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:29,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:30,12'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:41,9'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:30,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:31,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:33,10'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:33,22'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:33,30'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:33,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:33,3'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:34,9'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:40,2'
              BranchSideFuncs: []
        - Branch String:   'iostream-ssl-context-cache.c:35,8'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:36,9'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:39,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_iostream_context_cache_free
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     externalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          70
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - hash_table_destroy
        - hash_table_iterate
        - hash_table_iterate_deinit
        - hash_table_iterate_init
        - pool_unref
        - ssl_iostream_context_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:137,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:133,31'
              BranchSideFuncs:
                - hash_table_iterate_init
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.2659
                - ssl_iostream_context_unref
                - pool_unref.2659
            - BranchSide:      'iostream-ssl-context-cache.c:137,6'
              BranchSideFuncs:
                - hash_table_iterate_init
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.2659
                - ssl_iostream_context_unref
                - pool_unref.2659
        - Branch String:   'iostream-ssl-context-cache.c:137,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:138,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:140,9'
              BranchSideFuncs:
                - hash_table_iterate_init
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.2659
                - ssl_iostream_context_unref
                - pool_unref.2659
        - Branch String:   'iostream-ssl-context-cache.c:141,2'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:142,3'
              BranchSideFuncs:
                - ssl_iostream_context_unref
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.2659
                - pool_unref.2659
            - BranchSide:      'iostream-ssl-context-cache.c:145,2'
              BranchSideFuncs:
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.2659
        - Branch String:   'iostream-ssl-context-cache.c:143,3'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:141,2'
              BranchSideFuncs:
                - pool_unref.2659
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.2659
                - ssl_iostream_context_unref
            - BranchSide:      'iostream-ssl-context-cache.c:143,3'
              BranchSideFuncs:
                - pool_unref.2659
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_destroy
                - pool_unref.2659
                - ssl_iostream_context_unref
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:140,9'
          Dst:             hash_table_iterate_init
        - Src:             'iostream-ssl-context-cache.c:141,9'
          Dst:             hash_table_iterate
        - Src:             'iostream-ssl-context-cache.c:142,3'
          Dst:             ssl_iostream_context_unref
        - Src:             'iostream-ssl-context-cache.c:143,3'
          Dst:             pool_unref
        - Src:             'iostream-ssl-context-cache.c:145,2'
          Dst:             hash_table_iterate_deinit
        - Src:             'iostream-ssl-context-cache.c:146,2'
          Dst:             hash_table_destroy
        - Src:             'iostream-ssl-context-cache.c:147,2'
          Dst:             pool_unref
    - functionName:    ssl_iostream_server_context_cache_get
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     externalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - ctx_r
        - error_r
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ssl_iostream_context_cache_get
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:123,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:125,50'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'iostream-ssl-context-cache.c:128,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:123,13'
          Dst:             ssl_iostream_context_cache_get
        - Src:             'iostream-ssl-context-cache.c:124,14'
          Dst:             t_strdup_printf
    - functionName:    ssl_iostream_context_cache_get
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - server
        - ctx_r
        - error_r
      BBCount:         16
      ICount:          136
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - hash_table_create
        - hash_table_insert
        - hash_table_lookup
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - pool_ref
        - ssl_iostream_context_cache_cmp
        - ssl_iostream_context_cache_hash
        - ssl_iostream_context_init_client
        - ssl_iostream_context_init_server
        - ssl_iostream_context_ref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:66,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:68,4'
              BranchSideFuncs:
                - pool_alloconly_create
                - hash_table_create
                - hash_table_lookup
                - ssl_iostream_context_init_client
                - malloc_multiply_check.2655
                - p_malloc.2657
                - pool_ref.2654
                - hash_table_insert
                - ssl_iostream_context_ref
                - ssl_iostream_context_init_server
                - ssl_iostream_context_ref
            - BranchSide:      'iostream-ssl-context-cache.c:75,8'
              BranchSideFuncs:
                - hash_table_lookup
                - ssl_iostream_context_init_client
                - malloc_multiply_check.2655
                - p_malloc.2657
                - pool_ref.2654
                - hash_table_insert
                - ssl_iostream_context_ref
                - ssl_iostream_context_init_server
                - ssl_iostream_context_ref
        - Branch String:   'iostream-ssl-context-cache.c:76,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:77,28'
              BranchSideFuncs:
                - ssl_iostream_context_ref
            - BranchSide:      'iostream-ssl-context-cache.c:83,6'
              BranchSideFuncs:
                - ssl_iostream_context_init_client
                - malloc_multiply_check.2655
                - p_malloc.2657
                - pool_ref.2654
                - hash_table_insert
                - ssl_iostream_context_ref
                - ssl_iostream_context_init_server
        - Branch String:   'iostream-ssl-context-cache.c:83,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:84,40'
              BranchSideFuncs:
                - ssl_iostream_context_init_server
                - malloc_multiply_check.2655
                - p_malloc.2657
                - pool_ref.2654
                - hash_table_insert
                - ssl_iostream_context_ref
            - BranchSide:      'iostream-ssl-context-cache.c:87,40'
              BranchSideFuncs:
                - ssl_iostream_context_init_client
                - malloc_multiply_check.2655
                - p_malloc.2657
                - pool_ref.2654
                - hash_table_insert
                - ssl_iostream_context_ref
        - Branch String:   'iostream-ssl-context-cache.c:84,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:85,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:86,2'
              BranchSideFuncs:
                - malloc_multiply_check.2655
                - p_malloc.2657
                - pool_ref.2654
                - hash_table_insert
                - ssl_iostream_context_ref
        - Branch String:   'iostream-ssl-context-cache.c:87,7'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'iostream-ssl-context-cache.c:88,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:68,4'
          Dst:             pool_alloconly_create
        - Src:             'iostream-ssl-context-cache.c:69,3'
          Dst:             hash_table_create
        - Src:             'iostream-ssl-context-cache.c:69,3'
          Dst:             ssl_iostream_context_cache_hash
        - Src:             'iostream-ssl-context-cache.c:69,3'
          Dst:             ssl_iostream_context_cache_cmp
        - Src:             'iostream-ssl-context-cache.c:75,8'
          Dst:             hash_table_lookup
        - Src:             'iostream-ssl-context-cache.c:77,3'
          Dst:             ssl_iostream_context_ref
        - Src:             'iostream-ssl-context-cache.c:84,7'
          Dst:             ssl_iostream_context_init_server
        - Src:             'iostream-ssl-context-cache.c:87,7'
          Dst:             ssl_iostream_context_init_client
        - Src:             'iostream-ssl-context-cache.c:91,10'
          Dst:             malloc_multiply_check
        - Src:             'iostream-ssl-context-cache.c:91,10'
          Dst:             p_malloc
        - Src:             'iostream-ssl-context-cache.c:95,2'
          Dst:             pool_ref
        - Src:             'iostream-ssl-context-cache.c:96,2'
          Dst:             hash_table_insert
        - Src:             'iostream-ssl-context-cache.c:98,2'
          Dst:             ssl_iostream_context_ref
    - functionName:    ssl_iostream_client_context_cache_get
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/iostream-ssl-context-cache.c'
      linkageType:     externalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - ctx_r
        - error_r
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ssl_iostream_context_cache_get
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-ssl-context-cache.c:109,6'
          Branch Sides:
            - BranchSide:      'iostream-ssl-context-cache.c:111,50'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'iostream-ssl-context-cache.c:114,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-ssl-context-cache.c:109,13'
          Dst:             ssl_iostream_context_cache_get
        - Src:             'iostream-ssl-context-cache.c:110,14'
          Dst:             t_strdup_printf
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    ssl_server_settings_to_iostream_set
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/ssl-settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_set
        - ssl_server_set
        - set_r
      BBCount:         11
      ICount:          190
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - pool_add_external_ref
        - settings_file_get
        - ssl_common_settings_to_iostream_set
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ssl-settings.c:297,55'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:298,7'
              BranchSideFuncs:
                - settings_file_get
                - strcmp
                - settings_file_get
                - settings_file_get
            - BranchSide:      'ssl-settings.c:306,20'
              BranchSideFuncs:
                - settings_file_get
                - strcmp
        - Branch String:   'ssl-settings.c:297,6'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:299,21'
              BranchSideFuncs:
                - settings_file_get
                - settings_file_get
                - settings_file_get
                - strcmp
            - BranchSide:      'ssl-settings.c:306,20'
              BranchSideFuncs:
                - settings_file_get
                - strcmp
        - Branch String:   'ssl-settings.c:314,76'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:314,76'
              BranchSideFuncs: []
            - BranchSide:      'ssl-settings.c:315,8'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ssl-settings.c:288,3'
          Dst:             ssl_common_settings_to_iostream_set
        - Src:             'ssl-settings.c:289,2'
          Dst:             pool_add_external_ref
        - Src:             'ssl-settings.c:291,2'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:292,2'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:294,2'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:299,3'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:301,3'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:306,2'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:311,3'
          Dst:             strcmp
    - functionName:    ssl_common_settings_to_iostream_set
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/ssl-settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_set
      BBCount:         3
      ICount:          89
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_add_external_ref
        - pool_alloconly_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ssl-settings.c:243,16'
          Dst:             pool_alloconly_create
        - Src:             'ssl-settings.c:244,8'
          Dst:             malloc_multiply_check
        - Src:             'ssl-settings.c:244,8'
          Dst:             p_malloc
        - Src:             'ssl-settings.c:245,2'
          Dst:             pool_add_external_ref
    - functionName:    ssl_client_settings_to_iostream_set
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/ssl-settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ssl_set
        - set_r
      BBCount:         3
      ICount:          87
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_file_get
        - ssl_common_settings_to_iostream_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ssl-settings.c:265,3'
          Dst:             ssl_common_settings_to_iostream_set
        - Src:             'ssl-settings.c:267,2'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:270,2'
          Dst:             settings_file_get
        - Src:             'ssl-settings.c:272,2'
          Dst:             settings_file_get
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ssl_server_settings_get
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/ssl-settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - set_r
        - server_set_r
        - error_r
      BBCount:         14
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - event_create
        - event_unref
        - pool_unref
        - settings_event_add_filter_name
        - settings_get
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ssl-settings.c:229,6'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:229,6'
              BranchSideFuncs:
                - settings_get
                - event_unref
                - pool_unref.2705
            - BranchSide:      'ssl-settings.c:230,9'
              BranchSideFuncs:
                - settings_get
                - event_unref
                - pool_unref.2705
        - Branch String:   'ssl-settings.c:232,7'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:233,4'
              BranchSideFuncs:
                - event_unref
                - pool_unref.2705
            - BranchSide:      'ssl-settings.c:234,2'
              BranchSideFuncs:
                - event_unref
        - Branch String:   'ssl-settings.c:233,4'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:233,4'
              BranchSideFuncs:
                - pool_unref.2705
                - event_unref
            - BranchSide:      'ssl-settings.c:234,2'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'ssl-settings.c:225,10'
          Dst:             event_create
        - Src:             'ssl-settings.c:226,2'
          Dst:             settings_event_add_filter_name
        - Src:             'ssl-settings.c:227,12'
          Dst:             settings_get
        - Src:             'ssl-settings.c:230,9'
          Dst:             settings_get
        - Src:             'ssl-settings.c:233,4'
          Dst:             pool_unref
        - Src:             'ssl-settings.c:235,2'
          Dst:             event_unref
    - functionName:    ssl_server_settings_check
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/ssl-settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _set
        - pool
        - error_r
      BBCount:         22
      ICount:          142
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ssl-settings.c:182,6'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:184,3'
              BranchSideFuncs: []
            - BranchSide:      'ssl-settings.c:187,13'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
        - Branch String:   'ssl-settings.c:187,6'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:188,3'
              BranchSideFuncs: []
            - BranchSide:      'ssl-settings.c:190,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
        - Branch String:   'ssl-settings.c:190,13'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:191,3'
              BranchSideFuncs: []
            - BranchSide:      'ssl-settings.c:193,20'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'ssl-settings.c:198,43'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:199,6'
              BranchSideFuncs: []
            - BranchSide:      'ssl-settings.c:204,2'
              BranchSideFuncs: []
        - Branch String:   'ssl-settings.c:199,42'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:200,7'
              BranchSideFuncs: []
            - BranchSide:      'ssl-settings.c:204,2'
              BranchSideFuncs: []
        - Branch String:   'ssl-settings.c:198,6'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:201,4'
              BranchSideFuncs: []
            - BranchSide:      'ssl-settings.c:204,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ssl-settings.c:182,6'
          Dst:             strcmp
        - Src:             'ssl-settings.c:187,6'
          Dst:             strcmp
        - Src:             'ssl-settings.c:190,13'
          Dst:             strcmp
        - Src:             'ssl-settings.c:193,13'
          Dst:             strcmp
    - functionName:    ssl_settings_check
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/ssl-settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _set
        - pool
        - error_r
      BBCount:         27
      ICount:          162
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - i_warning
        - settings_get_config_binary
        - str_array_icase_find
        - strcasecmp
        - strstr
        - t_pop
        - t_push
        - t_str_ucase
        - t_strdup_printf
        - t_strsplit_spaces
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ssl-settings.c:131,6'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:131,61'
              BranchSideFuncs:
                - t_push
                - t_str_ucase
                - strstr
                - t_pop
                - t_strsplit_spaces
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - i_panic
                - i_warning
            - BranchSide:      'ssl-settings.c:140,2'
              BranchSideFuncs:
                - t_strsplit_spaces
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
        - Branch String:   'ssl-settings.c:133,7'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:134,4'
              BranchSideFuncs:
                - i_warning
                - t_pop
                - t_strsplit_spaces
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ssl-settings.c:136,4'
              BranchSideFuncs:
                - t_pop
                - t_strsplit_spaces
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - i_panic
        - Branch String:   'ssl-settings.c:136,4'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:136,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ssl-settings.c:136,4'
              BranchSideFuncs:
                - t_strsplit_spaces
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
        - Branch String:   'ssl-settings.c:146,2'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:147,18'
              BranchSideFuncs:
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
                - str_array_icase_find
                - t_strdup_printf
            - BranchSide:      'ssl-settings.c:165,6'
              BranchSideFuncs:
                - str_array_icase_find
                - t_strdup_printf
        - Branch String:   'ssl-settings.c:147,7'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:148,4'
              BranchSideFuncs:
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
            - BranchSide:      'ssl-settings.c:149,25'
              BranchSideFuncs:
                - strcasecmp
                - t_strdup_printf
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
        - Branch String:   'ssl-settings.c:149,14'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:150,4'
              BranchSideFuncs:
                - str_array_icase_find
                - t_strdup_printf
                - strcasecmp
                - strcasecmp
                - t_strdup_printf
            - BranchSide:      'ssl-settings.c:153,10'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'ssl-settings.c:164,6'
          Branch Sides:
            - BranchSide:      'ssl-settings.c:169,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'ssl-settings.c:173,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ssl-settings.c:131,6'
          Dst:             settings_get_config_binary
        - Src:             'ssl-settings.c:131,61'
          Dst:             t_push
        - Src:             'ssl-settings.c:132,23'
          Dst:             t_str_ucase
        - Src:             'ssl-settings.c:133,7'
          Dst:             strstr
        - Src:             'ssl-settings.c:134,4'
          Dst:             i_warning
        - Src:             'ssl-settings.c:136,4'
          Dst:             t_pop
        - Src:             'ssl-settings.c:136,4'
          Dst:             i_panic
        - Src:             'ssl-settings.c:144,22'
          Dst:             t_strsplit_spaces
        - Src:             'ssl-settings.c:147,7'
          Dst:             strcasecmp
        - Src:             'ssl-settings.c:149,14'
          Dst:             strcasecmp
        - Src:             'ssl-settings.c:152,15'
          Dst:             t_strdup_printf
        - Src:             'ssl-settings.c:164,6'
          Dst:             str_array_icase_find
        - Src:             'ssl-settings.c:166,14'
          Dst:             t_strdup_printf
    - functionName:    ssl_client_settings_get
      functionSourceFile: '/src/dovecot/src/lib-ssl-iostream/ssl-settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - set_r
        - error_r
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_create
        - event_unref
        - settings_event_add_filter_name
        - settings_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ssl-settings.c:212,10'
          Dst:             event_create
        - Src:             'ssl-settings.c:213,2'
          Dst:             settings_event_add_filter_name
        - Src:             'ssl-settings.c:214,12'
          Dst:             settings_get
        - Src:             'ssl-settings.c:216,2'
          Dst:             event_unref
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:253,13'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_filter_array_str_cmp
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2762
      functionLinenumberEnd: 2763
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - item1
        - item2
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:2763,9'
          Dst:             strcmp
    - functionName:    settings_filter_array_uint_cmp
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2751
      functionLinenumberEnd: 2757
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - item1
        - item2
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2752,6'
          Branch Sides:
            - BranchSide:      'settings.c:2753,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2754,6'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2754,6'
          Branch Sides:
            - BranchSide:      'settings.c:2755,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2756,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_get_modifiable_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
        - buffer_get_modifiable_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:304,13'
          Dst:             array_count_i
        - Src:             '../../src/lib/array.h:305,9'
          Dst:             buffer_get_modifiable_data
    - functionName:    settings_override_find_filter_check
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2019
      functionLinenumberEnd: 2029
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - set
      BBCount:         16
      ICount:          93
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - event_filter_match
        - null_strcmp
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:2023,33'
          Branch Sides:
            - BranchSide:      'settings.c:2023,36'
              BranchSideFuncs:
                - strcmp
                - null_strcmp
                - event_filter_match
            - BranchSide:      'settings.c:2023,33'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2023,65'
          Branch Sides:
            - BranchSide:      'settings.c:2023,65'
              BranchSideFuncs:
                - strcmp
                - null_strcmp
                - event_filter_match
            - BranchSide:      'settings.c:2024,10'
              BranchSideFuncs:
                - strcmp
                - null_strcmp
                - event_filter_match
        - Branch String:   'settings.c:2024,54'
          Branch Sides:
            - BranchSide:      'settings.c:2024,54'
              BranchSideFuncs:
                - null_strcmp
                - event_filter_match
            - BranchSide:      'settings.c:2025,15'
              BranchSideFuncs:
                - null_strcmp
                - event_filter_match
        - Branch String:   'settings.c:2025,63'
          Branch Sides:
            - BranchSide:      'settings.c:2025,63'
              BranchSideFuncs:
                - event_filter_match
            - BranchSide:      'settings.c:2027,3'
              BranchSideFuncs:
                - event_filter_match
        - Branch String:   'settings.c:2027,43'
          Branch Sides:
            - BranchSide:      'settings.c:2027,43'
              BranchSideFuncs:
                - event_filter_match
            - BranchSide:      'settings.c:2028,3'
              BranchSideFuncs:
                - event_filter_match
        - Branch String:   'settings.c:2028,44'
          Branch Sides:
            - BranchSide:      'settings.c:2028,44'
              BranchSideFuncs:
                - event_filter_match
            - BranchSide:      'settings.c:2029,22'
              BranchSideFuncs:
                - event_filter_match
      Callsites:
        - Src:             'settings.c:2024,3'
          Dst:             strcmp
        - Src:             'settings.c:2025,3'
          Dst:             null_strcmp
        - Src:             'settings.c:2029,3'
          Dst:             event_filter_match
    - functionName:    settings_key_part_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1803
      functionLinenumberEnd: 1828
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - last_filter_key
        - last_filter_value
        - key_idx_r
      BBCount:         15
      ICount:          111
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - setting_parser_info_find_key
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1804,6'
          Branch Sides:
            - BranchSide:      'settings.c:1805,3'
              BranchSideFuncs:
                - t_strdup_printf
                - setting_parser_info_find_key
                - t_strdup_printf
                - setting_parser_info_find_key
                - setting_parser_info_find_key
                - i_panic
            - BranchSide:      'settings.c:1827,38'
              BranchSideFuncs:
                - setting_parser_info_find_key
        - Branch String:   'settings.c:1805,3'
          Branch Sides:
            - BranchSide:      'settings.c:1805,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1806,28'
              BranchSideFuncs:
                - t_strdup_printf
                - setting_parser_info_find_key
                - t_strdup_printf
                - setting_parser_info_find_key
                - setting_parser_info_find_key
        - Branch String:   'settings.c:1814,7'
          Branch Sides:
            - BranchSide:      'settings.c:1816,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1820,43'
              BranchSideFuncs:
                - t_strdup_printf
                - setting_parser_info_find_key
                - setting_parser_info_find_key
        - Branch String:   'settings.c:1821,7'
          Branch Sides:
            - BranchSide:      'settings.c:1823,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1826,2'
              BranchSideFuncs:
                - setting_parser_info_find_key
      Callsites:
        - Src:             'settings.c:1805,3'
          Dst:             i_panic
        - Src:             'settings.c:1812,4'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1814,7'
          Dst:             setting_parser_info_find_key
        - Src:             'settings.c:1820,18'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1821,7'
          Dst:             setting_parser_info_find_key
        - Src:             'settings.c:1827,9'
          Dst:             setting_parser_info_find_key
    - functionName:    str_begins_with
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/strfuncs.h:100,16'
          Dst:             str_match
    - functionName:    settings_instance_override_add_default
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2107
      functionLinenumberEnd: 2183
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - array_set
        - key_idx
        - error_r
      BBCount:         22
      ICount:          256
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_space_i
        - event_filter_create_with_pool
        - event_filter_merge
        - event_filter_parse_case_sensitive
        - i_panic
        - p_strdup
        - p_strdup_printf
        - pool_ref
        - settings_override_set_blocks
        - settings_section_escape
        - strrchr
        - t_strdup_printf
        - t_strsplit
        - wildcard_str_escape
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2111,2'
          Branch Sides:
            - BranchSide:      'settings.c:2111,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2112,2'
              BranchSideFuncs:
                - t_strsplit
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - event_filter_merge
                - i_panic
        - Branch String:   'settings.c:2131,2'
          Branch Sides:
            - BranchSide:      'settings.c:2133,4'
              BranchSideFuncs:
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - event_filter_merge
                - i_panic
            - BranchSide:      'settings.c:2182,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2153,7'
          Branch Sides:
            - BranchSide:      'settings.c:2154,14'
              BranchSideFuncs:
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - event_filter_merge
                - i_panic
            - BranchSide:      'settings.c:2156,17'
              BranchSideFuncs:
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - event_filter_merge
                - i_panic
        - Branch String:   'settings.c:2164,7'
          Branch Sides:
            - BranchSide:      'settings.c:2166,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2168,47'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_merge
                - i_panic
        - Branch String:   'settings.c:2170,7'
          Branch Sides:
            - BranchSide:      'settings.c:2173,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2175,7'
              BranchSideFuncs:
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - i_panic
                - event_filter_merge
        - Branch String:   'settings.c:2175,7'
          Branch Sides:
            - BranchSide:      'settings.c:2178,23'
              BranchSideFuncs:
                - event_filter_merge
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - i_panic
            - BranchSide:      'settings.c:2181,2'
              BranchSideFuncs:
                - array_append_space_i.2904
                - p_strdup_printf
                - p_strdup
                - strrchr
                - settings_section_escape
                - wildcard_str_escape
                - t_strdup_printf
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - pool_ref.2905
                - event_filter_parse_case_sensitive
                - event_filter_merge
                - i_panic
      Callsites:
        - Src:             'settings.c:2111,2'
          Dst:             i_panic
        - Src:             'settings.c:2130,3'
          Dst:             t_strsplit
        - Src:             'settings.c:2133,4'
          Dst:             array_append_space_i
        - Src:             'settings.c:2137,19'
          Dst:             p_strdup_printf
        - Src:             'settings.c:2147,16'
          Dst:             p_strdup
        - Src:             'settings.c:2152,28'
          Dst:             strrchr
        - Src:             'settings.c:2161,36'
          Dst:             settings_section_escape
        - Src:             'settings.c:2161,16'
          Dst:             wildcard_str_escape
        - Src:             'settings.c:2159,31'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2164,7'
          Dst:             settings_override_set_blocks
        - Src:             'settings.c:2168,17'
          Dst:             event_filter_create_with_pool
        - Src:             'settings.c:2169,3'
          Dst:             pool_ref
        - Src:             'settings.c:2170,7'
          Dst:             event_filter_parse_case_sensitive
        - Src:             'settings.c:2172,4'
          Dst:             i_panic
        - Src:             'settings.c:2178,4'
          Dst:             event_filter_merge
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    strrchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_override_set_blocks
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1834
      functionLinenumberEnd: 1883
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - set
        - error_r
      BBCount:         18
      ICount:          179
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - i_memcpy
        - malloc_multiply_check
        - p_malloc
        - settings_override_key_part_find
        - t_strcut
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:1839,6'
          Branch Sides:
            - BranchSide:      'settings.c:1842,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1844,6'
              BranchSideFuncs:
                - settings_override_key_part_find
                - t_strdup_printf
                - i_memcpy.2906
                - malloc_multiply_check.2907
                - p_malloc.2908
                - i_memcpy.2906
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1844,6'
          Branch Sides:
            - BranchSide:      'settings.c:1846,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1848,39'
              BranchSideFuncs:
                - settings_override_key_part_find
                - t_strdup_printf
                - i_memcpy.2906
                - malloc_multiply_check.2907
                - p_malloc.2908
                - i_memcpy.2906
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1848,6'
          Branch Sides:
            - BranchSide:      'settings.c:1852,9'
              BranchSideFuncs:
                - i_memcpy.2906
                - malloc_multiply_check.2907
                - p_malloc.2908
                - i_memcpy.2906
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:1857,2'
              BranchSideFuncs:
                - i_memcpy.2906
                - malloc_multiply_check.2907
                - p_malloc.2908
                - i_memcpy.2906
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1860,6'
          Branch Sides:
            - BranchSide:      'settings.c:1861,63'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1865,29'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - i_memcpy.2906
                - t_strdup_printf
        - Branch String:   'settings.c:1866,2'
          Branch Sides:
            - BranchSide:      'settings.c:1867,3'
              BranchSideFuncs:
                - i_memcpy.2906
                - t_strdup_printf
            - BranchSide:      'settings.c:1881,21'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1870,7'
          Branch Sides:
            - BranchSide:      'settings.c:1873,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1878,4'
              BranchSideFuncs:
                - i_memcpy.2906
                - t_strdup_printf
      Callsites:
        - Src:             'settings.c:1836,20'
          Dst:             t_strcut
        - Src:             'settings.c:1848,7'
          Dst:             settings_override_key_part_find
        - Src:             'settings.c:1851,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1857,2'
          Dst:             i_memcpy
        - Src:             'settings.c:1861,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1865,29'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:1865,29'
          Dst:             p_malloc
        - Src:             'settings.c:1867,3'
          Dst:             i_memcpy
        - Src:             'settings.c:1871,15'
          Dst:             t_strdup_printf
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_override_key_part_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1773
      functionLinenumberEnd: 1796
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - key
        - last_filter_key
        - last_filter_value
        - type_r
        - blocks_r
      BBCount:         15
      ICount:          111
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - settings_mmap_lookup_key
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:1774,6'
          Branch Sides:
            - BranchSide:      'settings.c:1775,3'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_mmap_lookup_key
                - t_strdup_printf
                - settings_mmap_lookup_key
                - settings_mmap_lookup_key
                - i_panic
            - BranchSide:      'settings.c:1795,34'
              BranchSideFuncs:
                - settings_mmap_lookup_key
        - Branch String:   'settings.c:1775,3'
          Branch Sides:
            - BranchSide:      'settings.c:1775,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1776,28'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_mmap_lookup_key
                - t_strdup_printf
                - settings_mmap_lookup_key
                - settings_mmap_lookup_key
        - Branch String:   'settings.c:1784,7'
          Branch Sides:
            - BranchSide:      'settings.c:1785,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1789,43'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_mmap_lookup_key
                - settings_mmap_lookup_key
        - Branch String:   'settings.c:1790,7'
          Branch Sides:
            - BranchSide:      'settings.c:1791,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1794,2'
              BranchSideFuncs:
                - settings_mmap_lookup_key
      Callsites:
        - Src:             'settings.c:1775,3'
          Dst:             i_panic
        - Src:             'settings.c:1782,4'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1784,7'
          Dst:             settings_mmap_lookup_key
        - Src:             'settings.c:1789,18'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1790,7'
          Dst:             settings_mmap_lookup_key
        - Src:             'settings.c:1795,9'
          Dst:             settings_mmap_lookup_key
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    12
      BranchProfiles:
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:75,2'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    8
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    9
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    settings_mmap_lookup_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1742
      functionLinenumberEnd: 1765
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - key
        - type_r
        - blocks_r
      BBCount:         10
      ICount:          116
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - settings_mmap_registered_lookup_key
        - str_hash
        - strcmp
        - strlen
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings.c:1743,6'
          Branch Sides:
            - BranchSide:      'settings.c:1744,46'
              BranchSideFuncs:
                - settings_mmap_registered_lookup_key
            - BranchSide:      'settings.c:1747,23'
              BranchSideFuncs:
                - str_hash
                - strcmp
                - strlen
                - i_memcpy.2906
        - Branch String:   'settings.c:1750,6'
          Branch Sides:
            - BranchSide:      'settings.c:1751,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1754,21'
              BranchSideFuncs:
                - strcmp
                - strlen
                - i_memcpy.2906
        - Branch String:   'settings.c:1755,6'
          Branch Sides:
            - BranchSide:      'settings.c:1756,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1759,18'
              BranchSideFuncs:
                - strlen
                - i_memcpy.2906
      Callsites:
        - Src:             'settings.c:1744,10'
          Dst:             settings_mmap_registered_lookup_key
        - Src:             'settings.c:1747,56'
          Dst:             str_hash
        - Src:             'settings.c:1755,6'
          Dst:             strcmp
        - Src:             'settings.c:1759,25'
          Dst:             strlen
        - Src:             'settings.c:1761,2'
          Dst:             i_memcpy
    - functionName:    settings_mmap_registered_lookup_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1724
      functionLinenumberEnd: 1737
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - type_r
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_is_created_i
        - i_memcpy
        - setting_parser_info_find_key
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1725,6'
          Branch Sides:
            - BranchSide:      'settings.c:1726,3'
              BranchSideFuncs:
                - setting_parser_info_find_key
                - i_memcpy.2906
            - BranchSide:      'settings.c:1729,2'
              BranchSideFuncs:
                - setting_parser_info_find_key
                - i_memcpy.2906
        - Branch String:   'settings.c:1729,2'
          Branch Sides:
            - BranchSide:      'settings.c:1729,2'
              BranchSideFuncs:
                - i_memcpy.2906
                - setting_parser_info_find_key
            - BranchSide:      'settings.c:1729,2'
              BranchSideFuncs:
                - setting_parser_info_find_key
                - i_memcpy.2906
        - Branch String:   'settings.c:1729,2'
          Branch Sides:
            - BranchSide:      'settings.c:1731,36'
              BranchSideFuncs:
                - setting_parser_info_find_key
                - i_memcpy.2906
            - BranchSide:      'settings.c:1736,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1731,7'
          Branch Sides:
            - BranchSide:      'settings.c:1732,14'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1735,2'
              BranchSideFuncs:
                - setting_parser_info_find_key
                - i_memcpy.2906
      Callsites:
        - Src:             'settings.c:1725,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:1729,2'
          Dst:             i_memcpy
        - Src:             'settings.c:1731,7'
          Dst:             setting_parser_info_find_key
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_override_get_value
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2059
      functionLinenumberEnd: 2100
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - set
        - _key
        - key_idx_r
        - value_r
      BBCount:         36
      ICount:          266
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - settings_key_part_find
        - str_begins
        - str_begins_builtin_success
        - strchr
        - strncmp
        - t_strconcat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2063,6'
          Branch Sides:
            - BranchSide:      'settings.c:2065,11'
              BranchSideFuncs:
                - strchr
                - t_strconcat
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
                - t_strconcat
            - BranchSide:      'settings.c:2067,6'
              BranchSideFuncs:
                - strchr
                - t_strconcat
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
                - t_strconcat
        - Branch String:   'settings.c:2067,6'
          Branch Sides:
            - BranchSide:      'settings.c:2068,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2071,28'
              BranchSideFuncs:
                - strchr
                - t_strconcat
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
                - t_strconcat
        - Branch String:   'settings.c:2072,6'
          Branch Sides:
            - BranchSide:      'settings.c:2073,9'
              BranchSideFuncs:
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
                - t_strconcat
            - BranchSide:      'settings.c:2075,21'
              BranchSideFuncs:
                - t_strconcat
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
                - t_strconcat
        - Branch String:   'settings.c:2077,19'
          Branch Sides:
            - BranchSide:      'settings.c:2078,6'
              BranchSideFuncs:
                - t_strconcat
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
            - BranchSide:      'settings.c:2079,7'
              BranchSideFuncs:
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
        - Branch String:   'settings.c:2077,6'
          Branch Sides:
            - BranchSide:      'settings.c:2079,7'
              BranchSideFuncs:
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
            - BranchSide:      'settings.c:2095,3'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'settings.c:2079,19'
          Branch Sides:
            - BranchSide:      'settings.c:2079,22'
              BranchSideFuncs:
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
            - BranchSide:      'settings.c:2082,12'
              BranchSideFuncs:
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
        - Branch String:   'settings.c:2079,7'
          Branch Sides:
            - BranchSide:      'settings.c:2080,24'
              BranchSideFuncs:
                - t_strconcat
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
            - BranchSide:      'settings.c:2082,12'
              BranchSideFuncs:
                - str_begins
                - t_strconcat
                - strncmp
                - str_begins_builtin_success.2916
        - Branch String:   'settings.c:2086,7'
          Branch Sides:
            - BranchSide:      'settings.c:2086,8'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.2916
                - t_strconcat
            - BranchSide:      'settings.c:2086,8'
              BranchSideFuncs:
                - str_begins
                - t_strconcat
        - Branch String:   'settings.c:2086,8'
          Branch Sides:
            - BranchSide:      'settings.c:2088,15'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'settings.c:2090,33'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'settings.c:2086,7'
          Branch Sides:
            - BranchSide:      'settings.c:2086,8'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'settings.c:2086,8'
              BranchSideFuncs:
                - str_begins_builtin_success.2916
                - t_strconcat
        - Branch String:   'settings.c:2086,8'
          Branch Sides:
            - BranchSide:      'settings.c:2088,15'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2090,33'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'settings.c:2086,7'
          Branch Sides:
            - BranchSide:      'settings.c:2088,15'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'settings.c:2090,33'
              BranchSideFuncs:
                - t_strconcat
      Callsites:
        - Src:             'settings.c:2063,7'
          Dst:             settings_key_part_find
        - Src:             'settings.c:2071,21'
          Dst:             strchr
        - Src:             'settings.c:2075,9'
          Dst:             t_strconcat
        - Src:             'settings.c:2080,12'
          Dst:             t_strconcat
        - Src:             'settings.c:2086,8'
          Dst:             str_begins
        - Src:             'settings.c:2086,8'
          Dst:             strncmp
        - Src:             'settings.c:2086,8'
          Dst:             str_begins_builtin_success
        - Src:             'settings.c:2090,15'
          Dst:             t_strconcat
        - Src:             'settings.c:2098,13'
          Dst:             t_strconcat
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_include_group_add_or_update
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2300
      functionLinenumberEnd: 2314
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - include_groups
        - set
      BBCount:         10
      ICount:          88
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - buffer_get_modifiable_data
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2305,2'
          Branch Sides:
            - BranchSide:      'settings.c:2306,14'
              BranchSideFuncs:
                - strcmp
                - array_append_space_i.2904
            - BranchSide:      'settings.c:2311,18'
              BranchSideFuncs:
                - array_append_space_i.2904
        - Branch String:   'settings.c:2306,7'
          Branch Sides:
            - BranchSide:      'settings.c:2307,26'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2310,2'
              BranchSideFuncs:
                - array_append_space_i.2904
                - strcmp
      Callsites:
        - Src:             'settings.c:2305,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:2306,7'
          Dst:             strcmp
        - Src:             'settings.c:2311,18'
          Dst:             array_append_space_i
    - functionName:    settings_override_cmp_filter_order
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1717
      functionLinenumberEnd: 1719
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - set_filter
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_group_event_create
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1227
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         7
      ICount:          69
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - event_create
        - event_strlist_append
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1230,2'
          Branch Sides:
            - BranchSide:      'settings.c:1235,4'
              BranchSideFuncs:
                - t_strdup_printf
                - event_strlist_append
            - BranchSide:      'settings.c:1239,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1228,24'
          Dst:             event_create
        - Src:             'settings.c:1233,30'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1236,3'
          Dst:             event_strlist_append
    - functionName:    get_invalid_setting_error
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 798
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - prefix
        - key
        - value
        - orig_value
      BBCount:         13
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - settings_parser_get_error
        - str_c
        - str_printfa
        - strchr
        - strcmp
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:788,6'
          Branch Sides:
            - BranchSide:      'settings.c:789,23'
              BranchSideFuncs:
                - strchr
                - t_str_new
                - str_printfa
                - strcmp
                - settings_parser_get_error
                - str_printfa
                - str_c
                - str_printfa
                - i_panic
            - BranchSide:      'settings.c:793,18'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - strcmp
                - settings_parser_get_error
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'settings.c:790,3'
          Branch Sides:
            - BranchSide:      'settings.c:790,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:791,13'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - strcmp
                - settings_parser_get_error
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'settings.c:795,6'
          Branch Sides:
            - BranchSide:      'settings.c:795,6'
              BranchSideFuncs:
                - str_printfa
                - settings_parser_get_error
                - str_printfa
                - str_c
            - BranchSide:      'settings.c:796,15'
              BranchSideFuncs:
                - str_printfa
                - settings_parser_get_error
                - str_printfa
                - str_c
      Callsites:
        - Src:             'settings.c:789,16'
          Dst:             strchr
        - Src:             'settings.c:790,3'
          Dst:             i_panic
        - Src:             'settings.c:793,18'
          Dst:             t_str_new
        - Src:             'settings.c:794,2'
          Dst:             str_printfa
        - Src:             'settings.c:795,6'
          Dst:             strcmp
        - Src:             'settings.c:796,3'
          Dst:             str_printfa
        - Src:             'settings.c:797,27'
          Dst:             settings_parser_get_error
        - Src:             'settings.c:797,2'
          Dst:             str_printfa
        - Src:             'settings.c:798,9'
          Dst:             str_c
    - functionName:    settings_var_expand
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_idx
        - value
        - error_r
      BBCount:         53
      ICount:          372
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - i_panic
        - p_strdup
        - settings_file_get
        - settings_parse_read_file
        - str_c
        - str_truncate
        - strchr
        - strcmp
        - var_expand_program_create
        - var_expand_program_execute
        - var_expand_program_free
        - var_expand_program_import_sized
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:811,6'
          Branch Sides:
            - BranchSide:      'settings.c:812,19'
              BranchSideFuncs:
                - strchr
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
                - settings_file_get
            - BranchSide:      'settings.c:822,7'
              BranchSideFuncs:
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
                - settings_file_get
        - Branch String:   'settings.c:813,7'
          Branch Sides:
            - BranchSide:      'settings.c:814,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:817,15'
              BranchSideFuncs:
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
                - settings_file_get
        - Branch String:   'settings.c:822,6'
          Branch Sides:
            - BranchSide:      'settings.c:823,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:825,6'
              BranchSideFuncs:
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
                - settings_file_get
        - Branch String:   'settings.c:825,57'
          Branch Sides:
            - BranchSide:      'settings.c:826,6'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:827,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:825,6'
          Branch Sides:
            - BranchSide:      'settings.c:827,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:829,7'
              BranchSideFuncs:
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
                - settings_file_get
        - Branch String:   'settings.c:829,19'
          Branch Sides:
            - BranchSide:      'settings.c:829,22'
              BranchSideFuncs:
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
            - BranchSide:      'settings.c:842,7'
              BranchSideFuncs:
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
        - Branch String:   'settings.c:829,6'
          Branch Sides:
            - BranchSide:      'settings.c:830,22'
              BranchSideFuncs:
                - settings_file_get
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
            - BranchSide:      'settings.c:842,7'
              BranchSideFuncs:
                - strchr
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
        - Branch String:   'settings.c:842,19'
          Branch Sides:
            - BranchSide:      'settings.c:842,29'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
            - BranchSide:      'settings.c:845,7'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
        - Branch String:   'settings.c:842,6'
          Branch Sides:
            - BranchSide:      'settings.c:843,15'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
            - BranchSide:      'settings.c:845,7'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - var_expand_program_import_sized
                - i_panic
        - Branch String:   'settings.c:845,6'
          Branch Sides:
            - BranchSide:      'settings.c:847,11'
              BranchSideFuncs:
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_import_sized
                - i_panic
            - BranchSide:      'settings.c:850,8'
              BranchSideFuncs:
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - var_expand_program_import_sized
                - i_panic
        - Branch String:   'settings.c:850,7'
          Branch Sides:
            - BranchSide:      'settings.c:851,4'
              BranchSideFuncs:
                - var_expand_program_import_sized
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
                - i_panic
            - BranchSide:      'settings.c:857,40'
              BranchSideFuncs:
                - var_expand_program_create
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
        - Branch String:   'settings.c:851,4'
          Branch Sides:
            - BranchSide:      'settings.c:851,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:853,40'
              BranchSideFuncs:
                - var_expand_program_import_sized
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
        - Branch String:   'settings.c:853,8'
          Branch Sides:
            - BranchSide:      'settings.c:856,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:857,3'
              BranchSideFuncs:
                - str_truncate.2918
                - var_expand_program_execute
                - var_expand_program_free
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
        - Branch String:   'settings.c:857,14'
          Branch Sides:
            - BranchSide:      'settings.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:859,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:866,15'
          Branch Sides:
            - BranchSide:      'settings.c:866,19'
              BranchSideFuncs:
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
            - BranchSide:      'settings.c:868,21'
              BranchSideFuncs:
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
        - Branch String:   'settings.c:866,7'
          Branch Sides:
            - BranchSide:      'settings.c:867,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:868,21'
              BranchSideFuncs:
                - str_c
                - strcmp
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
        - Branch String:   'settings.c:871,6'
          Branch Sides:
            - BranchSide:      'settings.c:872,3'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
            - BranchSide:      'settings.c:873,13'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - settings_parse_read_file
        - Branch String:   'settings.c:873,13'
          Branch Sides:
            - BranchSide:      'settings.c:874,21'
              BranchSideFuncs:
                - str_c
                - settings_parse_read_file
            - BranchSide:      'settings.c:880,22'
              BranchSideFuncs:
                - str_c
                - p_strdup
        - Branch String:   'settings.c:875,7'
          Branch Sides:
            - BranchSide:      'settings.c:878,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:879,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:812,12'
          Dst:             strchr
        - Src:             'settings.c:830,3'
          Dst:             settings_file_get
        - Src:             'settings.c:842,22'
          Dst:             strchr
        - Src:             'settings.c:851,4'
          Dst:             i_panic
        - Src:             'settings.c:853,8'
          Dst:             var_expand_program_import_sized
        - Src:             'settings.c:857,14'
          Dst:             var_expand_program_create
        - Src:             'settings.c:862,3'
          Dst:             str_truncate
        - Src:             'settings.c:863,13'
          Dst:             var_expand_program_execute
        - Src:             'settings.c:865,3'
          Dst:             var_expand_program_free
        - Src:             'settings.c:868,28'
          Dst:             str_c
        - Src:             'settings.c:868,13'
          Dst:             strcmp
        - Src:             'settings.c:874,15'
          Dst:             str_c
        - Src:             'settings.c:875,7'
          Dst:             settings_parse_read_file
        - Src:             'settings.c:880,40'
          Dst:             str_c
        - Src:             'settings.c:880,12'
          Dst:             p_strdup
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    3
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_mmap_apply_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_idx
        - list_key
        - value
        - error_r
      BBCount:         24
      ICount:          211
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - get_invalid_setting_error
        - settings_parse_keyidx_value_nodup
        - settings_var_expand
        - strchr
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:892,6'
          Branch Sides:
            - BranchSide:      'settings.c:893,34'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
                - t_strdup_printf
                - strchr
            - BranchSide:      'settings.c:897,4'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
                - t_strdup_printf
                - strchr
        - Branch String:   'settings.c:902,6'
          Branch Sides:
            - BranchSide:      'settings.c:903,18'
              BranchSideFuncs:
                - strchr
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:913,6'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:904,7'
          Branch Sides:
            - BranchSide:      'settings.c:905,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:908,8'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:913,39'
          Branch Sides:
            - BranchSide:      'settings.c:914,7'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
            - BranchSide:      'settings.c:924,6'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
        - Branch String:   'settings.c:913,6'
          Branch Sides:
            - BranchSide:      'settings.c:917,9'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
            - BranchSide:      'settings.c:924,6'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
        - Branch String:   'settings.c:924,6'
          Branch Sides:
            - BranchSide:      'settings.c:925,11'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
            - BranchSide:      'settings.c:927,26'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
                - t_strdup_printf
        - Branch String:   'settings.c:927,6'
          Branch Sides:
            - BranchSide:      'settings.c:930,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:936,40'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - get_invalid_setting_error
        - Branch String:   'settings.c:936,6'
          Branch Sides:
            - BranchSide:      'settings.c:938,40'
              BranchSideFuncs:
                - get_invalid_setting_error
            - BranchSide:      'settings.c:942,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:893,9'
          Dst:             t_strdup_printf
        - Src:             'settings.c:903,11'
          Dst:             strchr
        - Src:             'settings.c:916,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:927,6'
          Dst:             settings_var_expand
        - Src:             'settings.c:928,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:936,6'
          Dst:             settings_parse_keyidx_value_nodup
        - Src:             'settings.c:938,14'
          Dst:             get_invalid_setting_error
    - functionName:    settings_event_filter_node_name_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - node
        - filter_name
        - op_not
      BBCount:         26
      ICount:          148
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - settings_event_filter_node_name_find
        - strcmp
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings.c:344,2'
          Branch Sides:
            - BranchSide:      'settings.c:346,8'
              BranchSideFuncs:
                - strcmp
                - strcmp
            - BranchSide:      'settings.c:355,44'
              BranchSideFuncs:
                - settings_event_filter_node_name_find
                - settings_event_filter_node_name_find
            - BranchSide:      'settings.c:355,44'
              BranchSideFuncs:
                - settings_event_filter_node_name_find
                - settings_event_filter_node_name_find
            - BranchSide:      'settings.c:363,47'
              BranchSideFuncs:
                - settings_event_filter_node_name_find
            - BranchSide:      'settings.c:366,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:346,15'
          Branch Sides:
            - BranchSide:      'settings.c:347,7'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:352,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:347,62'
          Branch Sides:
            - BranchSide:      'settings.c:348,14'
              BranchSideFuncs:
                - strcmp
                - strcmp
            - BranchSide:      'settings.c:352,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:348,64'
          Branch Sides:
            - BranchSide:      'settings.c:349,7'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings.c:352,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:349,60'
          Branch Sides:
            - BranchSide:      'settings.c:350,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings.c:352,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:346,7'
          Branch Sides:
            - BranchSide:      'settings.c:351,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:352,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:355,7'
          Branch Sides:
            - BranchSide:      'settings.c:357,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:358,44'
              BranchSideFuncs:
                - settings_event_filter_node_name_find
        - Branch String:   'settings.c:358,7'
          Branch Sides:
            - BranchSide:      'settings.c:360,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:361,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:348,7'
          Dst:             strcmp
        - Src:             'settings.c:350,7'
          Dst:             strcmp
        - Src:             'settings.c:355,7'
          Dst:             settings_event_filter_node_name_find
        - Src:             'settings.c:358,7'
          Dst:             settings_event_filter_node_name_find
        - Src:             'settings.c:363,10'
          Dst:             settings_event_filter_node_name_find
    - functionName:    settings_mmap_apply_blob
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1001
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - block
        - start_offset
        - end_offset
        - error_r
      BBCount:         64
      ICount:          461
      EdgeCount:       84
      CyclomaticComplexity: 22
      functionsReached:
        - array_idx_get_space_i
        - i_memcpy
        - i_panic
        - settings_mmap_apply_key
        - settings_parse_array_stop
        - settings_parse_list_has_key
        - settings_section_unescape
        - strlen
        - t_pop_pass_str
        - t_push
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1006,2'
          Branch Sides:
            - BranchSide:      'settings.c:1010,3'
              BranchSideFuncs:
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - t_pop_pass_str
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:1095,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1012,7'
          Branch Sides:
            - BranchSide:      'settings.c:1015,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1018,10'
              BranchSideFuncs:
                - array_idx_get_space_i
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
        - Branch String:   'settings.c:1025,7'
          Branch Sides:
            - BranchSide:      'settings.c:1029,14'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
            - BranchSide:      'settings.c:1031,8'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
        - Branch String:   'settings.c:1032,56'
          Branch Sides:
            - BranchSide:      'settings.c:1033,7'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
            - BranchSide:      'settings.c:1035,19'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
        - Branch String:   'settings.c:1032,7'
          Branch Sides:
            - BranchSide:      'settings.c:1035,19'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
            - BranchSide:      'settings.c:1050,7'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
        - Branch String:   'settings.c:1036,8'
          Branch Sides:
            - BranchSide:      'settings.c:1037,15'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
            - BranchSide:      'settings.c:1038,13'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
        - Branch String:   'settings.c:1038,13'
          Branch Sides:
            - BranchSide:      'settings.c:1039,15'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
            - BranchSide:      'settings.c:1041,15'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
        - Branch String:   'settings.c:1041,15'
          Branch Sides:
            - BranchSide:      'settings.c:0,0'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1044,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:1050,55'
          Branch Sides:
            - BranchSide:      'settings.c:1051,7'
              BranchSideFuncs:
                - strlen
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - settings_section_unescape
                - settings_parse_list_has_key
            - BranchSide:      'settings.c:1052,29'
              BranchSideFuncs:
                - strlen
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - settings_section_unescape
                - settings_parse_list_has_key
        - Branch String:   'settings.c:1050,7'
          Branch Sides:
            - BranchSide:      'settings.c:1052,29'
              BranchSideFuncs:
                - strlen
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - settings_section_unescape
                - settings_parse_list_has_key
            - BranchSide:      'settings.c:1057,14'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1054,26'
          Branch Sides:
            - BranchSide:      'settings.c:1054,14'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:1055,34'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1057,14'
          Branch Sides:
            - BranchSide:      'settings.c:1058,14'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:1059,12'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1062,7'
          Branch Sides:
            - BranchSide:      'settings.c:1067,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1070,37'
              BranchSideFuncs:
                - strlen
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
        - Branch String:   'settings.c:1072,7'
          Branch Sides:
            - BranchSide:      'settings.c:1076,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1079,7'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
        - Branch String:   'settings.c:1081,18'
          Branch Sides:
            - BranchSide:      'settings.c:1081,22'
              BranchSideFuncs:
                - settings_mmap_apply_key
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
            - BranchSide:      'settings.c:1085,8'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
        - Branch String:   'settings.c:1081,8'
          Branch Sides:
            - BranchSide:      'settings.c:1082,35'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
            - BranchSide:      'settings.c:1085,8'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - settings_parse_array_stop
        - Branch String:   'settings.c:1085,8'
          Branch Sides:
            - BranchSide:      'settings.c:1089,31'
              BranchSideFuncs:
                - settings_parse_array_stop
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:1091,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:1091,5'
          Branch Sides:
            - BranchSide:      'settings.c:1091,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:1091,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:1091,5'
          Branch Sides:
            - BranchSide:      'settings.c:1091,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1091,5'
              BranchSideFuncs:
                - i_memcpy.2906
                - array_idx_get_space_i
                - strlen
                - t_push
                - t_pop_pass_str
                - i_panic
                - settings_parse_array_stop
                - settings_mmap_apply_key
                - t_strdup_printf
                - t_strdup_printf
                - strlen
                - settings_section_unescape
                - settings_parse_list_has_key
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1092,7'
          Branch Sides:
            - BranchSide:      'settings.c:1006,2'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1093,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1010,3'
          Dst:             i_memcpy
        - Src:             'settings.c:1013,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1024,4'
          Dst:             array_idx_get_space_i
        - Src:             'settings.c:1042,16'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1053,14'
          Dst:             strlen
        - Src:             'settings.c:1056,15'
          Dst:             settings_section_unescape
        - Src:             'settings.c:1055,6'
          Dst:             settings_parse_list_has_key
        - Src:             'settings.c:1064,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1071,13'
          Dst:             strlen
        - Src:             'settings.c:1073,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1080,3'
          Dst:             t_push
        - Src:             'settings.c:1082,11'
          Dst:             settings_mmap_apply_key
        - Src:             'settings.c:1089,5'
          Dst:             settings_parse_array_stop
        - Src:             'settings.c:1091,5'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:1091,5'
          Dst:             i_panic
    - functionName:    array_clear_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_set_used_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:191,2'
          Dst:             buffer_set_used_size
    - functionName:    settings_event_filter_name_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - filter_name
      BBCount:         11
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_get_root_node
        - i_panic
        - settings_event_filter_node_name_find
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:378,2'
          Branch Sides:
            - BranchSide:      'settings.c:378,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:379,2'
              BranchSideFuncs:
                - event_filter_get_root_node
                - settings_event_filter_node_name_find
                - i_panic
        - Branch String:   'settings.c:379,2'
          Branch Sides:
            - BranchSide:      'settings.c:379,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:379,2'
              BranchSideFuncs:
                - settings_event_filter_node_name_find
      Callsites:
        - Src:             'settings.c:377,35'
          Dst:             event_filter_get_root_node
        - Src:             'settings.c:378,2'
          Dst:             i_panic
        - Src:             'settings.c:379,2'
          Dst:             event_filter_get_root_node
        - Src:             'settings.c:379,2'
          Dst:             i_panic
        - Src:             'settings.c:380,9'
          Dst:             settings_event_filter_node_name_find
    - functionName:    settings_apply_groups
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1293
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - mmap
        - block
        - include_filter_idx
        - error_r
      BBCount:         41
      ICount:          230
      EdgeCount:       50
      CyclomaticComplexity: 11
      functionsReached:
        - array_is_created_i
        - event_filter_match
        - event_unref
        - i_panic
        - settings_group_event_create
        - settings_mmap_apply_filter
        - settings_mmap_get_filter_idx
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1253,6'
          Branch Sides:
            - BranchSide:      'settings.c:1253,6'
              BranchSideFuncs:
                - event_unref
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:1254,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1253,6'
          Branch Sides:
            - BranchSide:      'settings.c:1254,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1258,6'
              BranchSideFuncs:
                - event_unref
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'settings.c:1259,2'
          Branch Sides:
            - BranchSide:      'settings.c:1260,4'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_unref
                - event_filter_match
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:1291,2'
              BranchSideFuncs:
                - event_unref
        - Branch String:   'settings.c:1262,7'
          Branch Sides:
            - BranchSide:      'settings.c:1264,8'
              BranchSideFuncs:
                - event_unref
            - BranchSide:      'settings.c:1268,8'
              BranchSideFuncs:
                - event_unref
                - event_filter_match
                - settings_mmap_get_filter_idx
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'settings.c:1268,7'
          Branch Sides:
            - BranchSide:      'settings.c:1269,4'
              BranchSideFuncs:
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:1271,3'
              BranchSideFuncs:
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'settings.c:1271,3'
          Branch Sides:
            - BranchSide:      'settings.c:1271,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1273,5'
              BranchSideFuncs:
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - i_panic
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
        - Branch String:   'settings.c:1274,3'
          Branch Sides:
            - BranchSide:      'settings.c:1274,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1275,7'
              BranchSideFuncs:
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - i_panic
                - i_panic
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
        - Branch String:   'settings.c:1275,7'
          Branch Sides:
            - BranchSide:      'settings.c:1276,4'
              BranchSideFuncs:
                - event_unref
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:1278,7'
              BranchSideFuncs:
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - i_panic
                - i_panic
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
        - Branch String:   'settings.c:1278,7'
          Branch Sides:
            - BranchSide:      'settings.c:1278,22'
              BranchSideFuncs:
                - t_push
                - settings_group_event_create
                - t_pop
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - i_panic
                - i_panic
                - settings_mmap_apply_filter
                - i_panic
            - BranchSide:      'settings.c:1281,26'
              BranchSideFuncs:
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
                - settings_mmap_apply_filter
        - Branch String:   'settings.c:1280,5'
          Branch Sides:
            - BranchSide:      'settings.c:1280,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1280,5'
              BranchSideFuncs:
                - event_filter_match
                - event_unref
                - settings_mmap_get_filter_idx
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
                - settings_mmap_apply_filter
        - Branch String:   'settings.c:1281,7'
          Branch Sides:
            - BranchSide:      'settings.c:1259,2'
              BranchSideFuncs:
                - settings_mmap_apply_filter
                - event_unref
                - settings_mmap_get_filter_idx
                - event_filter_match
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:1282,35'
              BranchSideFuncs:
                - settings_mmap_apply_filter
                - event_unref
                - settings_mmap_get_filter_idx
                - event_filter_match
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'settings.c:1282,8'
          Branch Sides:
            - BranchSide:      'settings.c:1285,9'
              BranchSideFuncs:
                - event_unref
            - BranchSide:      'settings.c:1288,3'
              BranchSideFuncs:
                - event_unref
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - t_push
                - settings_group_event_create
                - t_pop
                - i_panic
                - i_panic
                - i_panic
      Callsites:
        - Src:             'settings.c:1253,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:1262,7'
          Dst:             settings_mmap_get_filter_idx
        - Src:             'settings.c:1271,3'
          Dst:             i_panic
        - Src:             'settings.c:1274,3'
          Dst:             i_panic
        - Src:             'settings.c:1278,22'
          Dst:             t_push
        - Src:             'settings.c:1279,12'
          Dst:             settings_group_event_create
        - Src:             'settings.c:1280,5'
          Dst:             t_pop
        - Src:             'settings.c:1280,5'
          Dst:             i_panic
        - Src:             'settings.c:1281,7'
          Dst:             event_filter_match
        - Src:             'settings.c:1282,8'
          Dst:             settings_mmap_apply_filter
        - Src:             'settings.c:1291,2'
          Dst:             event_unref
    - functionName:    settings_mmap_get_filter_idx
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - block
        - filter_idx
        - event_filter_idx_r
        - error_r
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:1139,6'
          Branch Sides:
            - BranchSide:      'settings.c:1141,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1144,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1140,14'
          Dst:             t_strdup_printf
    - functionName:    settings_mmap_apply_filter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1224
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - block
        - filter_idx
        - set_filter
        - error_r
      BBCount:         34
      ICount:          304
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - array_append_space_i
        - array_clear_i
        - i_memcpy
        - settings_event_filter_name_find
        - settings_instance_override
        - settings_mmap_apply_blob
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:1166,6'
          Branch Sides:
            - BranchSide:      'settings.c:1167,14'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1170,26'
              BranchSideFuncs:
                - strlen
                - i_memcpy.2906
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
                - settings_event_filter_name_find
        - Branch String:   'settings.c:1177,31'
          Branch Sides:
            - BranchSide:      'settings.c:1177,35'
              BranchSideFuncs:
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
                - settings_event_filter_name_find
            - BranchSide:      'settings.c:1182,2'
              BranchSideFuncs:
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
        - Branch String:   'settings.c:1177,52'
          Branch Sides:
            - BranchSide:      'settings.c:1178,6'
              BranchSideFuncs:
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
            - BranchSide:      'settings.c:1182,2'
              BranchSideFuncs:
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
        - Branch String:   'settings.c:1178,54'
          Branch Sides:
            - BranchSide:      'settings.c:1179,38'
              BranchSideFuncs:
                - settings_event_filter_name_find
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
            - BranchSide:      'settings.c:1182,2'
              BranchSideFuncs:
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
        - Branch String:   'settings.c:1177,6'
          Branch Sides:
            - BranchSide:      'settings.c:1180,3'
              BranchSideFuncs:
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
            - BranchSide:      'settings.c:1182,2'
              BranchSideFuncs:
                - array_clear_i
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
                - array_append_space_i.2904
                - strlen
                - strlen
        - Branch String:   'settings.c:1183,2'
          Branch Sides:
            - BranchSide:      'settings.c:1185,4'
              BranchSideFuncs:
                - array_append_space_i.2904
                - strlen
                - strlen
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
            - BranchSide:      'settings.c:1202,7'
              BranchSideFuncs:
                - settings_instance_override
                - settings_mmap_apply_blob
                - settings_instance_override
        - Branch String:   'settings.c:1205,6'
          Branch Sides:
            - BranchSide:      'settings.c:1206,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1208,6'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - settings_instance_override
        - Branch String:   'settings.c:1208,6'
          Branch Sides:
            - BranchSide:      'settings.c:1209,3'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - settings_instance_override
            - BranchSide:      'settings.c:1211,31'
              BranchSideFuncs:
                - settings_mmap_apply_blob
                - settings_instance_override
        - Branch String:   'settings.c:1211,6'
          Branch Sides:
            - BranchSide:      'settings.c:1214,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1215,6'
              BranchSideFuncs:
                - settings_instance_override
        - Branch String:   'settings.c:1215,6'
          Branch Sides:
            - BranchSide:      'settings.c:1216,36'
              BranchSideFuncs:
                - settings_instance_override
            - BranchSide:      'settings.c:1223,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1218,7'
          Branch Sides:
            - BranchSide:      'settings.c:1219,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1220,7'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1220,7'
          Branch Sides:
            - BranchSide:      'settings.c:1221,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1222,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1158,2'
          Dst:             i_memcpy
        - Src:             'settings.c:1170,19'
          Dst:             strlen
        - Src:             'settings.c:1173,2'
          Dst:             i_memcpy
        - Src:             'settings.c:1179,6'
          Dst:             settings_event_filter_name_find
        - Src:             'settings.c:1182,2'
          Dst:             array_clear_i
        - Src:             'settings.c:1185,4'
          Dst:             array_append_space_i
        - Src:             'settings.c:1188,20'
          Dst:             strlen
        - Src:             'settings.c:1192,20'
          Dst:             strlen
        - Src:             'settings.c:1203,12'
          Dst:             settings_instance_override
        - Src:             'settings.c:1211,6'
          Dst:             settings_mmap_apply_blob
        - Src:             'settings.c:1216,9'
          Dst:             settings_instance_override
    - functionName:    settings_instance_override
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2320
      functionLinenumberEnd: 2498
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - set_filter
        - defaults
        - error_r
      BBCount:         136
      ICount:          867
      EdgeCount:       180
      CyclomaticComplexity: 46
      functionsReached:
        - array_idx_get_space_i
        - array_idx_i
        - array_is_created_i
        - buffer_get_modifiable_data
        - i_panic
        - i_unreached
        - null_strcmp
        - p_strdup
        - pool_add_external_ref
        - settings_include_group_add_or_update
        - settings_instance_override_add_default
        - settings_override_cmp_filter_order
        - settings_override_free
        - settings_override_get_value
        - settings_parse_array_stop
        - settings_parse_keyidx_value_nodup
        - settings_parse_list_has_key
        - settings_parser_get_error
        - settings_section_unescape
        - settings_var_expand
        - str_begins
        - str_begins_builtin_success
        - str_begins_with
        - strcmp
        - strlen
        - strncmp
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:2329,2'
          Branch Sides:
            - BranchSide:      'settings.c:2330,7'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2496,14'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2330,7'
          Branch Sides:
            - BranchSide:      'settings.c:2331,4'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2332,9'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
        - Branch String:   'settings.c:2340,55'
          Branch Sides:
            - BranchSide:      'settings.c:2341,42'
              BranchSideFuncs:
                - settings_override_cmp_filter_order
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
            - BranchSide:      'settings.c:2344,7'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
        - Branch String:   'settings.c:2340,7'
          Branch Sides:
            - BranchSide:      'settings.c:2342,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2344,7'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
        - Branch String:   'settings.c:2344,7'
          Branch Sides:
            - BranchSide:      'settings.c:2345,18'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2350,7'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
        - Branch String:   'settings.c:2346,8'
          Branch Sides:
            - BranchSide:      'settings.c:2347,5'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
            - BranchSide:      'settings.c:2348,3'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
        - Branch String:   'settings.c:2350,31'
          Branch Sides:
            - BranchSide:      'settings.c:2350,34'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
            - BranchSide:      'settings.c:2357,21'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
        - Branch String:   'settings.c:2350,63'
          Branch Sides:
            - BranchSide:      'settings.c:2351,14'
              BranchSideFuncs:
                - strcmp
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - null_strcmp
            - BranchSide:      'settings.c:2357,21'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
        - Branch String:   'settings.c:2351,58'
          Branch Sides:
            - BranchSide:      'settings.c:2352,19'
              BranchSideFuncs:
                - null_strcmp
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
            - BranchSide:      'settings.c:2357,21'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
        - Branch String:   'settings.c:2350,7'
          Branch Sides:
            - BranchSide:      'settings.c:2353,16'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
            - BranchSide:      'settings.c:2357,21'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
        - Branch String:   'settings.c:2358,7'
          Branch Sides:
            - BranchSide:      'settings.c:2360,6'
              BranchSideFuncs:
                - settings_include_group_add_or_update
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2363,37'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
        - Branch String:   'settings.c:2365,7'
          Branch Sides:
            - BranchSide:      'settings.c:2366,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2367,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
        - Branch String:   'settings.c:2367,7'
          Branch Sides:
            - BranchSide:      'settings.c:2369,4'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2371,27'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
        - Branch String:   'settings.c:2373,7'
          Branch Sides:
            - BranchSide:      'settings.c:2374,15'
              BranchSideFuncs:
                - settings_instance_override_add_default
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
            - BranchSide:      'settings.c:2384,14'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
        - Branch String:   'settings.c:2379,8'
          Branch Sides:
            - BranchSide:      'settings.c:2380,48'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
            - BranchSide:      'settings.c:2384,3'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
        - Branch String:   'settings.c:2380,9'
          Branch Sides:
            - BranchSide:      'settings.c:2382,6'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2383,4'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
        - Branch String:   'settings.c:2384,62'
          Branch Sides:
            - BranchSide:      'settings.c:2385,7'
              BranchSideFuncs:
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
            - BranchSide:      'settings.c:2387,8'
              BranchSideFuncs:
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
        - Branch String:   'settings.c:2387,8'
          Branch Sides:
            - BranchSide:      'settings.c:2387,9'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
            - BranchSide:      'settings.c:2387,9'
              BranchSideFuncs:
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
        - Branch String:   'settings.c:2387,9'
          Branch Sides:
            - BranchSide:      'settings.c:2388,5'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
            - BranchSide:      'settings.c:2389,8'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
        - Branch String:   'settings.c:2387,8'
          Branch Sides:
            - BranchSide:      'settings.c:2387,9'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
            - BranchSide:      'settings.c:2387,9'
              BranchSideFuncs:
                - strlen
                - str_begins_builtin_success.2916
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - strlen
                - strncmp
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
        - Branch String:   'settings.c:2387,9'
          Branch Sides:
            - BranchSide:      'settings.c:2388,5'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'settings.c:2389,8'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
        - Branch String:   'settings.c:2387,8'
          Branch Sides:
            - BranchSide:      'settings.c:2388,5'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
            - BranchSide:      'settings.c:2389,8'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
        - Branch String:   'settings.c:2389,8'
          Branch Sides:
            - BranchSide:      'settings.c:2392,5'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - i_panic
            - BranchSide:      'settings.c:2393,43'
              BranchSideFuncs:
                - settings_section_unescape
                - settings_parse_list_has_key
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
        - Branch String:   'settings.c:2392,5'
          Branch Sides:
            - BranchSide:      'settings.c:2392,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2393,4'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
        - Branch String:   'settings.c:2393,15'
          Branch Sides:
            - BranchSide:      'settings.c:2396,5'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2398,16'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
        - Branch String:   'settings.c:2400,7'
          Branch Sides:
            - BranchSide:      'settings.c:2402,5'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
            - BranchSide:      'settings.c:2421,3'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
        - Branch String:   'settings.c:2403,4'
          Branch Sides:
            - BranchSide:      'settings.c:2405,5'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
            - BranchSide:      'settings.c:2408,5'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2411,9'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
            - BranchSide:      'settings.c:2415,8'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
        - Branch String:   'settings.c:2411,9'
          Branch Sides:
            - BranchSide:      'settings.c:2412,6'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2413,5'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
        - Branch String:   'settings.c:2415,8'
          Branch Sides:
            - BranchSide:      'settings.c:2416,6'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
            - BranchSide:      'settings.c:2418,6'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
        - Branch String:   'settings.c:2422,7'
          Branch Sides:
            - BranchSide:      'settings.c:2423,27'
              BranchSideFuncs:
                - settings_override_free
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
            - BranchSide:      'settings.c:2425,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
        - Branch String:   'settings.c:2425,7'
          Branch Sides:
            - BranchSide:      'settings.c:2431,30'
              BranchSideFuncs:
                - settings_var_expand
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - t_strdup_printf
            - BranchSide:      'settings.c:2443,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
        - Branch String:   'settings.c:2432,8'
          Branch Sides:
            - BranchSide:      'settings.c:2435,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:2438,8'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
        - Branch String:   'settings.c:2438,8'
          Branch Sides:
            - BranchSide:      'settings.c:2440,21'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
            - BranchSide:      'settings.c:2442,3'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
        - Branch String:   'settings.c:2443,60'
          Branch Sides:
            - BranchSide:      'settings.c:2444,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
            - BranchSide:      'settings.c:2452,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
        - Branch String:   'settings.c:2444,53'
          Branch Sides:
            - BranchSide:      'settings.c:2443,7'
              BranchSideFuncs:
                - str_begins_with
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - t_strdup_printf
                - strncmp
            - BranchSide:      'settings.c:2452,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
        - Branch String:   'settings.c:2443,7'
          Branch Sides:
            - BranchSide:      'settings.c:2445,7'
              BranchSideFuncs:
                - strncmp
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins_with
                - t_strdup_printf
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
            - BranchSide:      'settings.c:2445,7'
              BranchSideFuncs:
                - str_begins_with
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - strncmp
                - t_strdup_printf
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
        - Branch String:   'settings.c:2445,7'
          Branch Sides:
            - BranchSide:      'settings.c:2448,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:2452,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
        - Branch String:   'settings.c:2443,7'
          Branch Sides:
            - BranchSide:      'settings.c:2448,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:2452,7'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
        - Branch String:   'settings.c:2452,7'
          Branch Sides:
            - BranchSide:      'settings.c:2453,22'
              BranchSideFuncs:
                - p_strdup
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:2454,12'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
        - Branch String:   'settings.c:2463,8'
          Branch Sides:
            - BranchSide:      'settings.c:2464,5'
              BranchSideFuncs:
                - array_idx_i.2924
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_is_created_i.2914
                - pool_add_external_ref
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2465,13'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_is_created_i.2914
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - pool_add_external_ref
        - Branch String:   'settings.c:2464,5'
          Branch Sides:
            - BranchSide:      'settings.c:2464,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2467,3'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:2468,40'
          Branch Sides:
            - BranchSide:      'settings.c:2469,8'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
            - BranchSide:      'settings.c:2478,41'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
        - Branch String:   'settings.c:2468,7'
          Branch Sides:
            - BranchSide:      'settings.c:2474,34'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
            - BranchSide:      'settings.c:2478,41'
              BranchSideFuncs:
                - settings_parse_keyidx_value_nodup
                - settings_override_get_value
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
        - Branch String:   'settings.c:2478,7'
          Branch Sides:
            - BranchSide:      'settings.c:2483,34'
              BranchSideFuncs:
                - settings_parser_get_error
                - t_strdup_printf
            - BranchSide:      'settings.c:2488,8'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
                - settings_parse_array_stop
        - Branch String:   'settings.c:2488,20'
          Branch Sides:
            - BranchSide:      'settings.c:2489,7'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2495,2'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
        - Branch String:   'settings.c:2488,7'
          Branch Sides:
            - BranchSide:      'settings.c:2493,30'
              BranchSideFuncs:
                - settings_parse_array_stop
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
            - BranchSide:      'settings.c:2495,2'
              BranchSideFuncs:
                - settings_override_get_value
                - settings_parse_keyidx_value_nodup
                - settings_parse_array_stop
                - settings_parser_get_error
                - t_strdup_printf
                - t_strdup_printf
                - array_is_created_i.2914
                - pool_add_external_ref
                - array_idx_i.2924
                - i_panic
                - p_strdup
                - str_begins_with
                - t_strdup_printf
                - strncmp
                - settings_var_expand
                - t_strdup_printf
                - settings_override_free
                - array_idx_get_space_i
                - str_begins
                - i_unreached
                - settings_section_unescape
                - settings_parse_list_has_key
                - i_panic
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.2916
                - settings_instance_override_add_default
                - settings_include_group_add_or_update
                - strcmp
                - null_strcmp
                - settings_override_cmp_filter_order
      Callsites:
        - Src:             'settings.c:2329,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:2341,7'
          Dst:             settings_override_cmp_filter_order
        - Src:             'settings.c:2351,7'
          Dst:             strcmp
        - Src:             'settings.c:2352,7'
          Dst:             null_strcmp
        - Src:             'settings.c:2359,4'
          Dst:             settings_include_group_add_or_update
        - Src:             'settings.c:2363,9'
          Dst:             settings_override_get_value
        - Src:             'settings.c:2380,9'
          Dst:             settings_instance_override_add_default
        - Src:             'settings.c:2387,9'
          Dst:             str_begins
        - Src:             'settings.c:2387,9'
          Dst:             strlen
        - Src:             'settings.c:2387,9'
          Dst:             strncmp
        - Src:             'settings.c:2387,9'
          Dst:             strlen
        - Src:             'settings.c:2387,9'
          Dst:             str_begins_builtin_success
        - Src:             'settings.c:2388,5'
          Dst:             i_unreached
        - Src:             'settings.c:2392,5'
          Dst:             i_panic
        - Src:             'settings.c:2395,6'
          Dst:             settings_section_unescape
        - Src:             'settings.c:2393,15'
          Dst:             settings_parse_list_has_key
        - Src:             'settings.c:2402,5'
          Dst:             array_idx_get_space_i
        - Src:             'settings.c:2423,4'
          Dst:             settings_override_free
        - Src:             'settings.c:2431,10'
          Dst:             settings_var_expand
        - Src:             'settings.c:2433,16'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2445,7'
          Dst:             strncmp
        - Src:             'settings.c:2445,7'
          Dst:             str_begins_with
        - Src:             'settings.c:2446,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2453,12'
          Dst:             p_strdup
        - Src:             'settings.c:2463,8'
          Dst:             array_is_created_i
        - Src:             'settings.c:2464,5'
          Dst:             array_idx_i
        - Src:             'settings.c:2464,5'
          Dst:             i_panic
        - Src:             'settings.c:2466,5'
          Dst:             pool_add_external_ref
        - Src:             'settings.c:2471,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2478,7'
          Dst:             settings_parse_keyidx_value_nodup
        - Src:             'settings.c:2484,17'
          Dst:             settings_parser_get_error
        - Src:             'settings.c:2480,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2493,4'
          Dst:             settings_parse_array_stop
    - functionName:    settings_override_free
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - override
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - event_filter_unref
      functionUses:    6
      BranchProfiles:
        - Branch String:   'settings.c:203,52'
          Branch Sides:
            - BranchSide:      'settings.c:203,52'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'settings.c:204,6'
              BranchSideFuncs:
                - event_filter_unref
        - Branch String:   'settings.c:203,6'
          Branch Sides:
            - BranchSide:      'settings.c:203,6'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'settings.c:205,23'
              BranchSideFuncs:
                - event_filter_unref
      Callsites:
        - Src:             'settings.c:205,3'
          Dst:             event_filter_unref
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    settings_mmap_validate
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1102
      functionLinenumberEnd: 1130
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - block
        - info
        - error_r
      BBCount:         17
      ICount:          146
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - settings_block_read_str
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1107,2'
          Branch Sides:
            - BranchSide:      'settings.c:1108,7'
              BranchSideFuncs:
                - settings_block_read_str
                - strcmp
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:1123,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:1108,7'
          Branch Sides:
            - BranchSide:      'settings.c:1109,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1110,31'
              BranchSideFuncs:
                - settings_block_read_str
                - strcmp
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:1110,7'
          Branch Sides:
            - BranchSide:      'settings.c:1114,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1116,14'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - settings_block_read_str
                - t_strdup_printf
        - Branch String:   'settings.c:1116,7'
          Branch Sides:
            - BranchSide:      'settings.c:1119,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1122,2'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_str
                - strcmp
                - t_strdup_printf
        - Branch String:   'settings.c:1123,6'
          Branch Sides:
            - BranchSide:      'settings.c:1126,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1129,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1110,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:1116,7'
          Dst:             strcmp
        - Src:             'settings.c:1117,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1124,14'
          Dst:             t_strdup_printf
    - functionName:    settings_block_read_str
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - offset
        - end_offset
        - name
        - str_r
        - error_r
      BBCount:         6
      ICount:          73
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - t_strdup_printf
      functionUses:    8
      BranchProfiles:
        - Branch String:   'settings.c:280,6'
          Branch Sides:
            - BranchSide:      'settings.c:283,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:286,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:279,13'
          Dst:             strlen
        - Src:             'settings.c:281,14'
          Dst:             t_strdup_printf
    - functionName:    setting_override_match_info
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1887
      functionLinenumberEnd: 1897
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - set
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:1888,6'
          Branch Sides:
            - BranchSide:      'settings.c:1890,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1892,20'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'settings.c:1892,2'
          Branch Sides:
            - BranchSide:      'settings.c:1893,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings.c:1896,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1893,7'
          Branch Sides:
            - BranchSide:      'settings.c:1894,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1895,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'settings.c:1893,7'
          Dst:             strcmp
    - functionName:    settings_override_filter_match
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1903
      functionLinenumberEnd: 2015
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - set
        - error_r
      BBCount:         64
      ICount:          471
      EdgeCount:       85
      CyclomaticComplexity: 23
      functionsReached:
        - event_filter_create_with_pool
        - event_filter_match
        - event_filter_parse_case_sensitive
        - i_panic
        - p_strdup
        - pool_ref
        - setting_override_match_info
        - settings_override_key_part_find
        - settings_override_set_blocks
        - settings_section_escape
        - str_append
        - str_begins
        - str_begins_builtin_success
        - str_c
        - str_printfa
        - strchr
        - strncmp
        - t_str_new
        - t_strdup_printf
        - t_strdup_until
        - wildcard_str_escape
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1910,6'
          Branch Sides:
            - BranchSide:      'settings.c:1911,7'
              BranchSideFuncs:
                - setting_override_match_info
                - event_filter_match
            - BranchSide:      'settings.c:1921,6'
              BranchSideFuncs:
                - str_begins
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
                - settings_override_set_blocks
                - setting_override_match_info
                - strncmp
                - str_begins_builtin_success.2916
        - Branch String:   'settings.c:1911,7'
          Branch Sides:
            - BranchSide:      'settings.c:1912,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1913,36'
              BranchSideFuncs:
                - setting_override_match_info
                - event_filter_match
        - Branch String:   'settings.c:1913,7'
          Branch Sides:
            - BranchSide:      'settings.c:1914,4'
              BranchSideFuncs:
                - event_filter_match
            - BranchSide:      'settings.c:1915,7'
              BranchSideFuncs:
                - event_filter_match
        - Branch String:   'settings.c:1915,7'
          Branch Sides:
            - BranchSide:      'settings.c:1916,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1917,29'
              BranchSideFuncs:
                - event_filter_match
        - Branch String:   'settings.c:1921,6'
          Branch Sides:
            - BranchSide:      'settings.c:1921,6'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.2916
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
                - settings_override_set_blocks
                - setting_override_match_info
            - BranchSide:      'settings.c:1921,6'
              BranchSideFuncs:
                - str_begins
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
                - settings_override_set_blocks
                - setting_override_match_info
        - Branch String:   'settings.c:1921,6'
          Branch Sides:
            - BranchSide:      'settings.c:1923,42'
              BranchSideFuncs:
                - settings_override_set_blocks
                - setting_override_match_info
            - BranchSide:      'settings.c:1933,12'
              BranchSideFuncs:
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
        - Branch String:   'settings.c:1921,6'
          Branch Sides:
            - BranchSide:      'settings.c:1921,6'
              BranchSideFuncs:
                - settings_override_set_blocks
                - setting_override_match_info
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
            - BranchSide:      'settings.c:1921,6'
              BranchSideFuncs:
                - str_begins_builtin_success.2916
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
                - settings_override_set_blocks
                - setting_override_match_info
        - Branch String:   'settings.c:1921,6'
          Branch Sides:
            - BranchSide:      'settings.c:1923,42'
              BranchSideFuncs:
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
            - BranchSide:      'settings.c:1933,12'
              BranchSideFuncs:
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
        - Branch String:   'settings.c:1921,6'
          Branch Sides:
            - BranchSide:      'settings.c:1923,42'
              BranchSideFuncs:
                - settings_override_set_blocks
                - setting_override_match_info
            - BranchSide:      'settings.c:1933,12'
              BranchSideFuncs:
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
        - Branch String:   'settings.c:1925,7'
          Branch Sides:
            - BranchSide:      'settings.c:1926,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1928,3'
              BranchSideFuncs:
                - setting_override_match_info
        - Branch String:   'settings.c:1936,2'
          Branch Sides:
            - BranchSide:      'settings.c:1937,37'
              BranchSideFuncs:
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
            - BranchSide:      'settings.c:1990,6'
              BranchSideFuncs:
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:1941,7'
          Branch Sides:
            - BranchSide:      'settings.c:1946,10'
              BranchSideFuncs:
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
            - BranchSide:      'settings.c:1950,7'
              BranchSideFuncs:
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
        - Branch String:   'settings.c:1950,31'
          Branch Sides:
            - BranchSide:      'settings.c:1950,34'
              BranchSideFuncs:
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:1951,4'
              BranchSideFuncs:
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:1950,7'
          Branch Sides:
            - BranchSide:      'settings.c:1951,4'
              BranchSideFuncs:
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:1953,7'
              BranchSideFuncs:
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
        - Branch String:   'settings.c:1953,7'
          Branch Sides:
            - BranchSide:      'settings.c:1954,20'
              BranchSideFuncs:
                - t_str_new
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
            - BranchSide:      'settings.c:1956,15'
              BranchSideFuncs:
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - t_str_new
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
        - Branch String:   'settings.c:1957,3'
          Branch Sides:
            - BranchSide:      'settings.c:1959,22'
              BranchSideFuncs:
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_strdup_printf
                - t_str_new
            - BranchSide:      'settings.c:1966,24'
              BranchSideFuncs:
                - strchr
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
                - t_strdup_printf
            - BranchSide:      'settings.c:1984,5'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:1968,8'
          Branch Sides:
            - BranchSide:      'settings.c:1971,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1974,22'
              BranchSideFuncs:
                - t_strdup_until
                - settings_section_escape
                - wildcard_str_escape
                - str_printfa
                - strchr
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
                - p_strdup
                - t_strdup_until
                - settings_override_key_part_find
                - t_strdup_printf
                - str_append.2930
                - strchr
                - t_strdup_printf
                - wildcard_str_escape
                - str_printfa
                - t_strdup_printf
                - t_str_new
        - Branch String:   'settings.c:1990,6'
          Branch Sides:
            - BranchSide:      'settings.c:1991,35'
              BranchSideFuncs:
                - p_strdup
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
            - BranchSide:      'settings.c:1992,6'
              BranchSideFuncs:
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
                - p_strdup
        - Branch String:   'settings.c:1992,6'
          Branch Sides:
            - BranchSide:      'settings.c:1993,37'
              BranchSideFuncs:
                - p_strdup
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
            - BranchSide:      'settings.c:1995,41'
              BranchSideFuncs:
                - settings_override_set_blocks
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
        - Branch String:   'settings.c:1996,6'
          Branch Sides:
            - BranchSide:      'settings.c:1997,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1999,6'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
        - Branch String:   'settings.c:1999,6'
          Branch Sides:
            - BranchSide:      'settings.c:2000,3'
              BranchSideFuncs:
                - setting_override_match_info
                - event_filter_match
            - BranchSide:      'settings.c:2002,47'
              BranchSideFuncs:
                - event_filter_create_with_pool
                - str_c
                - event_filter_parse_case_sensitive
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
                - str_c
                - i_panic
        - Branch String:   'settings.c:2003,7'
          Branch Sides:
            - BranchSide:      'settings.c:2006,5'
              BranchSideFuncs:
                - str_c
                - i_panic
            - BranchSide:      'settings.c:2008,12'
              BranchSideFuncs:
                - pool_ref.2905
                - setting_override_match_info
                - event_filter_match
        - Branch String:   'settings.c:2011,6'
          Branch Sides:
            - BranchSide:      'settings.c:2012,3'
              BranchSideFuncs:
                - event_filter_match
            - BranchSide:      'settings.c:2013,10'
              BranchSideFuncs:
                - event_filter_match
        - Branch String:   'settings.c:2013,51'
          Branch Sides:
            - BranchSide:      'settings.c:2013,9'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2014,22'
              BranchSideFuncs:
                - event_filter_match
      Callsites:
        - Src:             'settings.c:1913,8'
          Dst:             setting_override_match_info
        - Src:             'settings.c:1917,10'
          Dst:             event_filter_match
        - Src:             'settings.c:1921,6'
          Dst:             str_begins
        - Src:             'settings.c:1921,6'
          Dst:             strncmp
        - Src:             'settings.c:1921,6'
          Dst:             str_begins_builtin_success
        - Src:             'settings.c:1923,13'
          Dst:             settings_override_set_blocks
        - Src:             'settings.c:1930,10'
          Dst:             setting_override_match_info
        - Src:             'settings.c:1936,14'
          Dst:             strchr
        - Src:             'settings.c:1937,22'
          Dst:             t_strdup_until
        - Src:             'settings.c:1941,8'
          Dst:             settings_override_key_part_find
        - Src:             'settings.c:1945,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1954,20'
          Dst:             t_str_new
        - Src:             'settings.c:1956,4'
          Dst:             str_append
        - Src:             'settings.c:1962,9'
          Dst:             wildcard_str_escape
        - Src:             'settings.c:1961,4'
          Dst:             str_printfa
        - Src:             'settings.c:1967,8'
          Dst:             strchr
        - Src:             'settings.c:1969,16'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1975,24'
          Dst:             t_strdup_until
        - Src:             'settings.c:1977,46'
          Dst:             settings_section_escape
        - Src:             'settings.c:1977,26'
          Dst:             wildcard_str_escape
        - Src:             'settings.c:1976,4'
          Dst:             str_printfa
        - Src:             'settings.c:1982,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1991,26'
          Dst:             p_strdup
        - Src:             'settings.c:1993,28'
          Dst:             p_strdup
        - Src:             'settings.c:1995,12'
          Dst:             settings_override_set_blocks
        - Src:             'settings.c:2002,17'
          Dst:             event_filter_create_with_pool
        - Src:             'settings.c:2003,41'
          Dst:             str_c
        - Src:             'settings.c:2003,7'
          Dst:             event_filter_parse_case_sensitive
        - Src:             'settings.c:2006,27'
          Dst:             str_c
        - Src:             'settings.c:2005,4'
          Dst:             i_panic
        - Src:             'settings.c:2008,3'
          Dst:             pool_ref
        - Src:             'settings.c:2011,7'
          Dst:             setting_override_match_info
        - Src:             'settings.c:2014,3'
          Dst:             event_filter_match
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    settings_apply_override_cmp
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1684
      functionLinenumberEnd: 1712
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set1
        - set2
      BBCount:         16
      ICount:          136
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1691,6'
          Branch Sides:
            - BranchSide:      'settings.c:1692,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1697,6'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1697,48'
          Branch Sides:
            - BranchSide:      'settings.c:1698,7'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1700,14'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1698,43'
          Branch Sides:
            - BranchSide:      'settings.c:1699,7'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1707,13'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1697,6'
          Branch Sides:
            - BranchSide:      'settings.c:1700,14'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1707,13'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1702,7'
          Branch Sides:
            - BranchSide:      'settings.c:1703,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1704,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1708,6'
          Branch Sides:
            - BranchSide:      'settings.c:1709,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1711,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    settings_instance_overrides_add_filters
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2206
      functionLinenumberEnd: 2225
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - info
      BBCount:         15
      ICount:          124
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
        - settings_apply_add_override
        - settings_override_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2212,6'
          Branch Sides:
            - BranchSide:      'settings.c:2213,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2214,20'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_apply_add_override
                - settings_override_free
                - i_panic
        - Branch String:   'settings.c:2214,2'
          Branch Sides:
            - BranchSide:      'settings.c:2214,2'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_apply_add_override
                - settings_override_free
                - i_panic
            - BranchSide:      'settings.c:2215,9'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_apply_add_override
                - settings_override_free
                - i_panic
        - Branch String:   'settings.c:2220,7'
          Branch Sides:
            - BranchSide:      'settings.c:2221,52'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2222,7'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_apply_add_override
                - i_panic
                - settings_override_free
        - Branch String:   'settings.c:2222,7'
          Branch Sides:
            - BranchSide:      'settings.c:2223,27'
              BranchSideFuncs:
                - settings_override_free
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_apply_add_override
                - i_panic
            - BranchSide:      'settings.c:2224,2'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_apply_add_override
                - settings_override_free
                - i_panic
      Callsites:
        - Src:             'settings.c:2215,9'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:2215,9'
          Dst:             p_malloc
        - Src:             'settings.c:2220,14'
          Dst:             settings_apply_add_override
        - Src:             'settings.c:2221,4'
          Dst:             i_panic
        - Src:             'settings.c:2223,4'
          Dst:             settings_override_free
    - functionName:    settings_apply_add_override
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2188
      functionLinenumberEnd: 2201
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - set
        - error_r
      BBCount:         15
      ICount:          95
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - array_count_i
        - i_panic
        - settings_override_filter_match
        - t_pop_pass_str
        - t_push
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings.c:2192,4'
          Branch Sides:
            - BranchSide:      'settings.c:2192,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - array_append_space_i.2904
                - array_count_i.2900
                - i_panic
            - BranchSide:      'settings.c:2192,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - array_append_space_i.2904
                - array_count_i.2900
                - i_panic
        - Branch String:   'settings.c:2192,4'
          Branch Sides:
            - BranchSide:      'settings.c:2192,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2192,4'
              BranchSideFuncs:
                - array_append_space_i.2904
                - array_count_i.2900
        - Branch String:   'settings.c:2193,6'
          Branch Sides:
            - BranchSide:      'settings.c:2194,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2197,3'
              BranchSideFuncs:
                - array_append_space_i.2904
                - array_count_i.2900
      Callsites:
        - Src:             'settings.c:2190,2'
          Dst:             t_push
        - Src:             'settings.c:2191,9'
          Dst:             settings_override_filter_match
        - Src:             'settings.c:2192,4'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:2192,4'
          Dst:             i_panic
        - Src:             'settings.c:2197,3'
          Dst:             array_append_space_i
        - Src:             'settings.c:2199,20'
          Dst:             array_count_i
    - functionName:    settings_var_expand_init_add
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1541
      functionLinenumberEnd: 1629
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - init_ctx
        - params
      BBCount:         107
      ICount:          557
      EdgeCount:       136
      CyclomaticComplexity: 31
      functionsReached:
        - array_append_i
        - array_count_i
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:1552,6'
          Branch Sides:
            - BranchSide:      'settings.c:1553,3'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:1555,13'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1553,3'
          Branch Sides:
            - BranchSide:      'settings.c:1553,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1554,3'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - i_panic
        - Branch String:   'settings.c:1558,6'
          Branch Sides:
            - BranchSide:      'settings.c:1559,3'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - i_panic
            - BranchSide:      'settings.c:1561,13'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1559,3'
          Branch Sides:
            - BranchSide:      'settings.c:1559,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1560,3'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1564,28'
          Branch Sides:
            - BranchSide:      'settings.c:1564,31'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1565,3'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1564,6'
          Branch Sides:
            - BranchSide:      'settings.c:1565,3'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1567,6'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1567,33'
          Branch Sides:
            - BranchSide:      'settings.c:1567,36'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1568,16'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1567,6'
          Branch Sides:
            - BranchSide:      'settings.c:1568,16'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1604,6'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1574,10'
          Branch Sides:
            - BranchSide:      'settings.c:1574,8'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1575,5'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1576,11'
          Branch Sides:
            - BranchSide:      'settings.c:1576,9'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1577,5'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1584,8'
          Branch Sides:
            - BranchSide:      'settings.c:1585,5'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1587,15'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1590,8'
          Branch Sides:
            - BranchSide:      'settings.c:1591,5'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1593,15'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1596,21'
          Branch Sides:
            - BranchSide:      'settings.c:1596,24'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1598,3'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1596,8'
          Branch Sides:
            - BranchSide:      'settings.c:1597,5'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
            - BranchSide:      'settings.c:1598,3'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1598,24'
          Branch Sides:
            - BranchSide:      'settings.c:1598,3'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1598,27'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
        - Branch String:   'settings.c:1598,3'
          Branch Sides:
            - BranchSide:      'settings.c:1574,10'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
                - array_append_i.2931
            - BranchSide:      'settings.c:1600,7'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1600,7'
          Branch Sides:
            - BranchSide:      'settings.c:1600,40'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
            - BranchSide:      'settings.c:1600,40'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1600,7'
          Branch Sides:
            - BranchSide:      'settings.c:1601,20'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
            - BranchSide:      'settings.c:1602,2'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1601,20'
          Branch Sides:
            - BranchSide:      'settings.c:1601,18'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
            - BranchSide:      'settings.c:1601,18'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1604,6'
          Branch Sides:
            - BranchSide:      'settings.c:1605,27'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
            - BranchSide:      'settings.c:1606,6'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1606,6'
          Branch Sides:
            - BranchSide:      'settings.c:1607,30'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
            - BranchSide:      'settings.c:1610,6'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1610,6'
          Branch Sides:
            - BranchSide:      'settings.c:1611,16'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - i_panic
                - array_append_i.2931
            - BranchSide:      'settings.c:1620,21'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - array_append_i.2931
        - Branch String:   'settings.c:1612,3'
          Branch Sides:
            - BranchSide:      'settings.c:1613,9'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:1616,3'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
                - i_panic
        - Branch String:   'settings.c:1616,3'
          Branch Sides:
            - BranchSide:      'settings.c:1616,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1617,2'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
        - Branch String:   'settings.c:1620,3'
          Branch Sides:
            - BranchSide:      'settings.c:0,0'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
            - BranchSide:      'settings.c:1621,4'
              BranchSideFuncs:
                - array_append_i.2931
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - i_panic
        - Branch String:   'settings.c:1628,2'
          Branch Sides:
            - BranchSide:      'settings.c:1628,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1628,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'settings.c:1628,2'
          Branch Sides:
            - BranchSide:      'settings.c:1628,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1628,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1553,3'
          Dst:             i_panic
        - Src:             'settings.c:1554,3'
          Dst:             array_append_i
        - Src:             'settings.c:1556,3'
          Dst:             array_append_i
        - Src:             'settings.c:1559,3'
          Dst:             i_panic
        - Src:             'settings.c:1560,3'
          Dst:             array_append_i
        - Src:             'settings.c:1562,3'
          Dst:             array_append_i
        - Src:             'settings.c:1565,3'
          Dst:             array_append_i
        - Src:             'settings.c:1585,5'
          Dst:             array_append_i
        - Src:             'settings.c:1588,5'
          Dst:             array_append_i
        - Src:             'settings.c:1591,5'
          Dst:             array_append_i
        - Src:             'settings.c:1594,5'
          Dst:             array_append_i
        - Src:             'settings.c:1614,4'
          Dst:             array_append_i
        - Src:             'settings.c:1616,3'
          Dst:             i_panic
        - Src:             'settings.c:1621,4'
          Dst:             array_append_i
        - Src:             'settings.c:1625,28'
          Dst:             array_count_i
        - Src:             'settings.c:1626,27'
          Dst:             array_count_i
        - Src:             'settings.c:1627,25'
          Dst:             array_count_i
        - Src:             'settings.c:1628,2'
          Dst:             i_panic
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    p_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_realloc
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         11
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:129,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:129,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:131,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:133,6'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/mempool.h:133,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:134,10'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:136,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:130,3'
          Dst:             i_panic
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_get_name
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_mmap_pool_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1481
      functionLinenumberEnd: 1485
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_get_max_easy_alloc_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1485,9'
          Dst:             p_get_max_easy_alloc_size
    - functionName:    settings_mmap_pool_realloc
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1468
      functionLinenumberEnd: 1472
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1472,9'
          Dst:             p_realloc
    - functionName:    settings_mmap_pool_free
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1459
      functionLinenumberEnd: 1464
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1463,2'
          Dst:             p_free_internal
    - functionName:    settings_mmap_pool_malloc
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1451
      functionLinenumberEnd: 1455
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1455,9'
          Dst:             p_malloc
    - functionName:    settings_mmap_pool_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1434
      functionLinenumberEnd: 1448
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         21
      ICount:          138
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - pool_external_refs_unref
        - pool_unref
        - settings_mmap_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1438,2'
          Branch Sides:
            - BranchSide:      'settings.c:1438,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1439,3'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.2935
        - Branch String:   'settings.c:1440,6'
          Branch Sides:
            - BranchSide:      'settings.c:1441,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1443,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.2935
        - Branch String:   'settings.c:1443,2'
          Branch Sides:
            - BranchSide:      'settings.c:1443,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.2935
            - BranchSide:      'settings.c:1443,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.2935
        - Branch String:   'settings.c:1443,2'
          Branch Sides:
            - BranchSide:      'settings.c:1443,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.2935
            - BranchSide:      'settings.c:1445,23'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_external_refs_unref
                - pool_unref.2935
      Callsites:
        - Src:             'settings.c:1438,2'
          Dst:             i_panic
        - Src:             'settings.c:1445,2'
          Dst:             settings_mmap_unref
        - Src:             'settings.c:1446,2'
          Dst:             pool_external_refs_unref
        - Src:             'settings.c:1447,2'
          Dst:             pool_unref
    - functionName:    settings_mmap_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1358
      functionLinenumberEnd: 1378
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _mmap
      BBCount:         24
      ICount:          144
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - event_filter_unref
        - hash_table_destroy
        - i_error
        - i_panic
        - munmap
        - pool_unref
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings.c:1360,6'
          Branch Sides:
            - BranchSide:      'settings.c:1361,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1362,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
                - event_filter_unref
                - i_panic
        - Branch String:   'settings.c:1362,2'
          Branch Sides:
            - BranchSide:      'settings.c:1362,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1364,3'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:1365,6'
          Branch Sides:
            - BranchSide:      'settings.c:1366,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1368,20'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:1368,2'
          Branch Sides:
            - BranchSide:      'settings.c:1369,7'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
                - event_filter_unref
            - BranchSide:      'settings.c:1373,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
        - Branch String:   'settings.c:1369,66'
          Branch Sides:
            - BranchSide:      'settings.c:1370,7'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
                - event_filter_unref
            - BranchSide:      'settings.c:1372,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:1369,7'
          Branch Sides:
            - BranchSide:      'settings.c:1371,24'
              BranchSideFuncs:
                - event_filter_unref
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
            - BranchSide:      'settings.c:1372,2'
              BranchSideFuncs:
                - hash_table_destroy
                - munmap
                - pool_unref.2935
                - i_error
                - event_filter_unref
        - Branch String:   'settings.c:1375,6'
          Branch Sides:
            - BranchSide:      'settings.c:1376,3'
              BranchSideFuncs:
                - i_error
                - pool_unref.2935
            - BranchSide:      'settings.c:1377,14'
              BranchSideFuncs:
                - pool_unref.2935
      Callsites:
        - Src:             'settings.c:1362,2'
          Dst:             i_panic
        - Src:             'settings.c:1371,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:1373,2'
          Dst:             hash_table_destroy
        - Src:             'settings.c:1375,6'
          Dst:             munmap
        - Src:             'settings.c:1376,3'
          Dst:             i_error
        - Src:             'settings.c:1377,2'
          Dst:             pool_unref
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    10
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    munmap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_mmap_pool_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1431
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         7
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1429,2'
          Branch Sides:
            - BranchSide:      'settings.c:1429,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1429,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1429,2'
          Dst:             i_panic
    - functionName:    settings_mmap_pool_get_name
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1417
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_get_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1421,9'
          Dst:             pool_get_name
    - functionName:    settings_mmap_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1351
      functionLinenumberEnd: 1355
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1352,2'
          Branch Sides:
            - BranchSide:      'settings.c:1352,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1352,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1352,2'
          Dst:             i_panic
    - functionName:    settings_overrides_find_filter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2033
      functionLinenumberEnd: 2052
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         22
      ICount:          134
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - settings_override_find_filter_check
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2039,6'
          Branch Sides:
            - BranchSide:      'settings.c:2040,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - array_is_created_i.2914
                - buffer_get_modifiable_data
                - settings_override_find_filter_check
                - settings_override_find_filter_check
            - BranchSide:      'settings.c:2045,6'
              BranchSideFuncs:
                - array_is_created_i.2914
                - buffer_get_modifiable_data
                - settings_override_find_filter_check
        - Branch String:   'settings.c:2040,3'
          Branch Sides:
            - BranchSide:      'settings.c:2041,44'
              BranchSideFuncs:
                - settings_override_find_filter_check
                - array_is_created_i.2914
                - buffer_get_modifiable_data
                - settings_override_find_filter_check
            - BranchSide:      'settings.c:2044,2'
              BranchSideFuncs:
                - array_is_created_i.2914
                - buffer_get_modifiable_data
                - settings_override_find_filter_check
        - Branch String:   'settings.c:2041,8'
          Branch Sides:
            - BranchSide:      'settings.c:2042,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2043,3'
              BranchSideFuncs:
                - array_is_created_i.2914
                - buffer_get_modifiable_data
                - settings_override_find_filter_check
                - settings_override_find_filter_check
        - Branch String:   'settings.c:2045,6'
          Branch Sides:
            - BranchSide:      'settings.c:2046,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - settings_override_find_filter_check
            - BranchSide:      'settings.c:2051,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2046,3'
          Branch Sides:
            - BranchSide:      'settings.c:2047,44'
              BranchSideFuncs:
                - settings_override_find_filter_check
            - BranchSide:      'settings.c:2050,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2047,8'
          Branch Sides:
            - BranchSide:      'settings.c:2048,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2049,3'
              BranchSideFuncs:
                - settings_override_find_filter_check
      Callsites:
        - Src:             'settings.c:2039,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:2040,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:2041,8'
          Dst:             settings_override_find_filter_check
        - Src:             'settings.c:2045,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:2046,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:2047,8'
          Dst:             settings_override_find_filter_check
    - functionName:    settings_mmap_apply_defaults
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - error_r
      BBCount:         26
      ICount:          237
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - array_idx_get_space_i
        - get_invalid_setting_error
        - i_panic
        - settings_parse_keyidx_value
        - settings_var_expand
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:955,2'
          Branch Sides:
            - BranchSide:      'settings.c:957,4'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_var_expand
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:993,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:958,7'
          Branch Sides:
            - BranchSide:      'settings.c:959,4'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_var_expand
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:961,15'
              BranchSideFuncs:
                - settings_var_expand
                - array_idx_get_space_i
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:963,7'
          Branch Sides:
            - BranchSide:      'settings.c:964,4'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_var_expand
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:965,21'
              BranchSideFuncs:
                - settings_var_expand
                - array_idx_get_space_i
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:968,7'
          Branch Sides:
            - BranchSide:      'settings.c:969,4'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_var_expand
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:971,7'
              BranchSideFuncs:
                - settings_var_expand
                - array_idx_get_space_i
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:971,40'
          Branch Sides:
            - BranchSide:      'settings.c:972,8'
              BranchSideFuncs:
                - i_panic
                - settings_var_expand
                - array_idx_get_space_i
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
            - BranchSide:      'settings.c:977,33'
              BranchSideFuncs:
                - settings_var_expand
                - array_idx_get_space_i
                - i_panic
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
        - Branch String:   'settings.c:971,7'
          Branch Sides:
            - BranchSide:      'settings.c:975,5'
              BranchSideFuncs:
                - settings_var_expand
                - array_idx_get_space_i
                - i_panic
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
            - BranchSide:      'settings.c:977,33'
              BranchSideFuncs:
                - settings_var_expand
                - array_idx_get_space_i
                - i_panic
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
        - Branch String:   'settings.c:978,7'
          Branch Sides:
            - BranchSide:      'settings.c:981,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:984,7'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_var_expand
                - t_strdup_printf
                - i_panic
                - settings_parse_keyidx_value
                - get_invalid_setting_error
        - Branch String:   'settings.c:984,15'
          Branch Sides:
            - BranchSide:      'settings.c:985,35'
              BranchSideFuncs:
                - settings_parse_keyidx_value
                - array_idx_get_space_i
                - settings_var_expand
                - t_strdup_printf
                - i_panic
                - get_invalid_setting_error
            - BranchSide:      'settings.c:992,2'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_var_expand
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:984,7'
          Branch Sides:
            - BranchSide:      'settings.c:987,41'
              BranchSideFuncs:
                - get_invalid_setting_error
            - BranchSide:      'settings.c:992,2'
              BranchSideFuncs:
                - array_idx_get_space_i
                - settings_var_expand
                - settings_parse_keyidx_value
                - get_invalid_setting_error
                - t_strdup_printf
                - i_panic
      Callsites:
        - Src:             'settings.c:957,4'
          Dst:             array_idx_get_space_i
        - Src:             'settings.c:974,4'
          Dst:             i_panic
        - Src:             'settings.c:977,13'
          Dst:             settings_var_expand
        - Src:             'settings.c:979,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:985,7'
          Dst:             settings_parse_keyidx_value
        - Src:             'settings.c:987,15'
          Dst:             get_invalid_setting_error
    - functionName:    settings_apply_ctx_overrides_deinit
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2288
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_get_modifiable_data
        - settings_override_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2291,2'
          Branch Sides:
            - BranchSide:      'settings.c:2292,7'
              BranchSideFuncs:
                - settings_override_free
            - BranchSide:      'settings.c:2295,1'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2292,24'
          Branch Sides:
            - BranchSide:      'settings.c:2292,27'
              BranchSideFuncs:
                - settings_override_free
            - BranchSide:      'settings.c:2294,2'
              BranchSideFuncs:
                - settings_override_free
        - Branch String:   'settings.c:2292,7'
          Branch Sides:
            - BranchSide:      'settings.c:2293,27'
              BranchSideFuncs:
                - settings_override_free
            - BranchSide:      'settings.c:2294,2'
              BranchSideFuncs:
                - settings_override_free
      Callsites:
        - Src:             'settings.c:2291,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:2293,4'
          Dst:             settings_override_free
    - functionName:    settings_mmap_apply
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1348
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - error_r
      BBCount:         35
      ICount:          240
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - event_filter_match
        - hash_table_lookup
        - i_panic
        - settings_apply_groups
        - settings_mmap_apply_filter
        - settings_mmap_get_filter_idx
        - settings_mmap_validate
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1301,6'
          Branch Sides:
            - BranchSide:      'settings.c:1304,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:1308,7'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
                - settings_mmap_validate
        - Branch String:   'settings.c:1308,33'
          Branch Sides:
            - BranchSide:      'settings.c:1309,7'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
            - BranchSide:      'settings.c:1315,31'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
        - Branch String:   'settings.c:1308,6'
          Branch Sides:
            - BranchSide:      'settings.c:1310,30'
              BranchSideFuncs:
                - settings_mmap_validate
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
            - BranchSide:      'settings.c:1315,31'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
        - Branch String:   'settings.c:1310,7'
          Branch Sides:
            - BranchSide:      'settings.c:1311,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1312,3'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
        - Branch String:   'settings.c:1323,2'
          Branch Sides:
            - BranchSide:      'settings.c:1324,4'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
            - BranchSide:      'settings.c:1346,9'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1326,7'
          Branch Sides:
            - BranchSide:      'settings.c:1328,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1330,5'
              BranchSideFuncs:
                - event_filter_match
                - settings_mmap_get_filter_idx
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
        - Branch String:   'settings.c:1331,7'
          Branch Sides:
            - BranchSide:      'settings.c:1323,2'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
            - BranchSide:      'settings.c:1333,12'
              BranchSideFuncs:
                - event_filter_match
                - settings_mmap_get_filter_idx
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
        - Branch String:   'settings.c:1333,60'
          Branch Sides:
            - BranchSide:      'settings.c:1334,24'
              BranchSideFuncs:
                - settings_mmap_apply_filter
                - settings_apply_groups
                - settings_mmap_get_filter_idx
                - event_filter_match
                - i_panic
            - BranchSide:      'settings.c:1335,4'
              BranchSideFuncs:
                - settings_mmap_apply_filter
                - settings_apply_groups
                - settings_mmap_get_filter_idx
                - event_filter_match
                - i_panic
        - Branch String:   'settings.c:1335,4'
          Branch Sides:
            - BranchSide:      'settings.c:1335,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1336,35'
              BranchSideFuncs:
                - settings_mmap_apply_filter
                - settings_apply_groups
                - settings_mmap_get_filter_idx
                - event_filter_match
                - i_panic
        - Branch String:   'settings.c:1336,8'
          Branch Sides:
            - BranchSide:      'settings.c:1338,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1341,30'
              BranchSideFuncs:
                - settings_apply_groups
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - i_panic
        - Branch String:   'settings.c:1341,8'
          Branch Sides:
            - BranchSide:      'settings.c:1343,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1344,3'
              BranchSideFuncs:
                - settings_mmap_get_filter_idx
                - event_filter_match
                - settings_mmap_apply_filter
                - settings_apply_groups
                - i_panic
      Callsites:
        - Src:             'settings.c:1300,3'
          Dst:             hash_table_lookup
        - Src:             'settings.c:1302,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:1310,7'
          Dst:             settings_mmap_validate
        - Src:             'settings.c:1326,7'
          Dst:             settings_mmap_get_filter_idx
        - Src:             'settings.c:1334,5'
          Dst:             event_filter_match
        - Src:             'settings.c:1335,4'
          Dst:             i_panic
        - Src:             'settings.c:1336,8'
          Dst:             settings_mmap_apply_filter
        - Src:             'settings.c:1341,8'
          Dst:             settings_apply_groups
    - functionName:    settings_instance_override_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2284
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - error_r
      BBCount:         46
      ICount:          290
      EdgeCount:       60
      CyclomaticComplexity: 16
      functionsReached:
        - array_create_i
        - array_is_created_i
        - array_sort_i
        - buffer_get_modifiable_data
        - i_memcpy
        - pool_alloconly_create
        - pool_datastack_create
        - settings_apply_add_override
        - settings_apply_override_cmp
        - settings_info_register
        - settings_instance_overrides_add_filters
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2234,6'
          Branch Sides:
            - BranchSide:      'settings.c:2236,26'
              BranchSideFuncs:
                - settings_info_register
                - pool_datastack_create
                - array_create_i.2938
                - array_is_created_i.2914
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
                - buffer_get_modifiable_data
                - settings_apply_add_override
            - BranchSide:      'settings.c:2239,2'
              BranchSideFuncs:
                - pool_datastack_create
                - array_create_i.2938
                - array_is_created_i.2914
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
                - buffer_get_modifiable_data
                - settings_apply_add_override
        - Branch String:   'settings.c:2240,6'
          Branch Sides:
            - BranchSide:      'settings.c:2241,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
                - settings_apply_add_override
            - BranchSide:      'settings.c:2248,6'
              BranchSideFuncs:
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
        - Branch String:   'settings.c:2241,3'
          Branch Sides:
            - BranchSide:      'settings.c:2242,8'
              BranchSideFuncs:
                - settings_apply_add_override
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
            - BranchSide:      'settings.c:2247,2'
              BranchSideFuncs:
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
        - Branch String:   'settings.c:2242,8'
          Branch Sides:
            - BranchSide:      'settings.c:2243,23'
              BranchSideFuncs:
                - settings_apply_add_override
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
            - BranchSide:      'settings.c:2244,36'
              BranchSideFuncs:
                - settings_apply_add_override
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
        - Branch String:   'settings.c:2244,8'
          Branch Sides:
            - BranchSide:      'settings.c:2245,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2246,3'
              BranchSideFuncs:
                - array_is_created_i.2914
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - buffer_get_modifiable_data
                - settings_apply_add_override
                - settings_apply_add_override
        - Branch String:   'settings.c:2248,6'
          Branch Sides:
            - BranchSide:      'settings.c:2249,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - settings_apply_add_override
            - BranchSide:      'settings.c:2256,7'
              BranchSideFuncs:
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
        - Branch String:   'settings.c:2249,3'
          Branch Sides:
            - BranchSide:      'settings.c:2250,8'
              BranchSideFuncs:
                - settings_apply_add_override
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
            - BranchSide:      'settings.c:2255,2'
              BranchSideFuncs:
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
        - Branch String:   'settings.c:2250,8'
          Branch Sides:
            - BranchSide:      'settings.c:2251,23'
              BranchSideFuncs:
                - settings_apply_add_override
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
            - BranchSide:      'settings.c:2252,36'
              BranchSideFuncs:
                - settings_apply_add_override
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
        - Branch String:   'settings.c:2252,8'
          Branch Sides:
            - BranchSide:      'settings.c:2253,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2254,3'
              BranchSideFuncs:
                - array_sort_i
                - array_is_created_i.2914
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
                - settings_apply_add_override
        - Branch String:   'settings.c:2256,35'
          Branch Sides:
            - BranchSide:      'settings.c:2256,38'
              BranchSideFuncs:
                - array_is_created_i.2914
                - array_sort_i
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
            - BranchSide:      'settings.c:2257,6'
              BranchSideFuncs:
                - array_is_created_i.2914
                - array_sort_i
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
        - Branch String:   'settings.c:2256,57'
          Branch Sides:
            - BranchSide:      'settings.c:2257,6'
              BranchSideFuncs:
                - array_is_created_i.2914
                - array_sort_i
                - pool_alloconly_create
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
            - BranchSide:      'settings.c:2282,2'
              BranchSideFuncs:
                - array_sort_i
        - Branch String:   'settings.c:2256,6'
          Branch Sides:
            - BranchSide:      'settings.c:2277,20'
              BranchSideFuncs:
                - pool_alloconly_create
                - array_sort_i
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
            - BranchSide:      'settings.c:2282,2'
              BranchSideFuncs:
                - array_sort_i
        - Branch String:   'settings.c:2278,3'
          Branch Sides:
            - BranchSide:      'settings.c:2278,3'
              BranchSideFuncs:
                - i_memcpy.2906
                - array_sort_i
                - settings_instance_overrides_add_filters
            - BranchSide:      'settings.c:2278,3'
              BranchSideFuncs:
                - array_sort_i
                - settings_instance_overrides_add_filters
                - i_memcpy.2906
        - Branch String:   'settings.c:2278,3'
          Branch Sides:
            - BranchSide:      'settings.c:2279,44'
              BranchSideFuncs:
                - settings_instance_overrides_add_filters
                - array_sort_i
                - i_memcpy.2906
            - BranchSide:      'settings.c:2280,2'
              BranchSideFuncs:
                - array_sort_i
      Callsites:
        - Src:             'settings.c:2236,3'
          Dst:             settings_info_register
        - Src:             'settings.c:2239,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:2239,2'
          Dst:             array_create_i
        - Src:             'settings.c:2240,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:2241,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:2244,8'
          Dst:             settings_apply_add_override
        - Src:             'settings.c:2248,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:2249,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:2252,8'
          Dst:             settings_apply_add_override
        - Src:             'settings.c:2257,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:2277,20'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:2278,3'
          Dst:             i_memcpy
        - Src:             'settings.c:2279,4'
          Dst:             settings_instance_overrides_add_filters
        - Src:             'settings.c:2282,2'
          Dst:             array_sort_i
        - Src:             'settings.c:2282,2'
          Dst:             settings_apply_override_cmp
    - functionName:    settings_info_register
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3303
      functionLinenumberEnd: 3311
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - array_lsearch_i
        - lib_atexit
        - set_registered_infos_free
        - setting_parser_info_cmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:3304,6'
          Branch Sides:
            - BranchSide:      'settings.c:3305,3'
              BranchSideFuncs:
                - array_lsearch_i
                - array_append_i.2931
            - BranchSide:      'settings.c:3308,6'
              BranchSideFuncs:
                - array_lsearch_i
                - array_append_i.2931
        - Branch String:   'settings.c:3308,6'
          Branch Sides:
            - BranchSide:      'settings.c:3308,6'
              BranchSideFuncs:
                - array_append_i.2931
            - BranchSide:      'settings.c:3310,3'
              BranchSideFuncs:
                - array_append_i.2931
      Callsites:
        - Src:             'settings.c:3304,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:3305,3'
          Dst:             array_create_i
        - Src:             'settings.c:3306,3'
          Dst:             lib_atexit
        - Src:             'settings.c:3306,3'
          Dst:             set_registered_infos_free
        - Src:             'settings.c:3308,6'
          Dst:             array_lsearch_i
        - Src:             'settings.c:3308,6'
          Dst:             setting_parser_info_cmp
        - Src:             'settings.c:3310,3'
          Dst:             array_append_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    12
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2898
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.2898
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    set_registered_infos_free
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3291
      functionLinenumberEnd: 3293
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_free_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:3292,2'
          Branch Sides:
            - BranchSide:      'settings.c:3292,2'
              BranchSideFuncs:
                - array_free_i
            - BranchSide:      'settings.c:3292,2'
              BranchSideFuncs:
                - array_free_i
      Callsites:
        - Src:             'settings.c:3292,2'
          Dst:             array_free_i
    - functionName:    setting_parser_info_cmp
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3298
      functionLinenumberEnd: 3299
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - info2
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:159,2'
          Dst:             buffer_free
    - functionName:    settings_var_expand_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1633
      functionLinenumberEnd: 1679
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         19
      ICount:          183
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_idx_i
        - event_get_parent
        - event_get_ptr
        - i_panic
        - pool_datastack_create
        - settings_var_expand_init_add
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1643,2'
          Branch Sides:
            - BranchSide:      'settings.c:1645,18'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_ptr
                - event_get_parent
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - array_append_space_i.2904
                - array_append_space_i.2904
                - array_append_i.2931
                - array_idx_i.2924
                - array_idx_i.2924
                - array_idx_i.2924
                - i_panic
                - settings_var_expand_init_add
                - event_get_ptr
                - settings_var_expand_init_add
            - BranchSide:      'settings.c:1663,28'
              BranchSideFuncs:
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - array_append_space_i.2904
                - array_append_space_i.2904
                - array_append_i.2931
                - array_idx_i.2924
                - array_idx_i.2924
                - array_idx_i.2924
                - i_panic
        - Branch String:   'settings.c:1646,7'
          Branch Sides:
            - BranchSide:      'settings.c:1647,43'
              BranchSideFuncs:
                - event_get_ptr
                - settings_var_expand_init_add
                - event_get_parent
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - array_append_space_i.2904
                - array_append_space_i.2904
                - array_append_i.2931
                - array_idx_i.2924
                - array_idx_i.2924
                - array_idx_i.2924
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - settings_var_expand_init_add
            - BranchSide:      'settings.c:1654,19'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_parent
                - array_count_i.2900
                - array_count_i.2900
                - array_count_i.2900
                - array_append_space_i.2904
                - array_append_space_i.2904
                - array_append_i.2931
                - array_idx_i.2924
                - array_idx_i.2924
                - array_idx_i.2924
                - i_panic
                - event_get_ptr
                - event_get_ptr
                - settings_var_expand_init_add
                - settings_var_expand_init_add
        - Branch String:   'settings.c:1666,2'
          Branch Sides:
            - BranchSide:      'settings.c:1666,2'
              BranchSideFuncs:
                - array_append_space_i.2904
                - array_append_space_i.2904
                - array_append_i.2931
                - array_idx_i.2924
                - array_idx_i.2924
                - array_idx_i.2924
                - i_panic
            - BranchSide:      'settings.c:1666,2'
              BranchSideFuncs:
                - array_append_space_i.2904
                - array_append_space_i.2904
                - array_append_i.2931
                - array_idx_i.2924
                - array_idx_i.2924
                - array_idx_i.2924
                - i_panic
        - Branch String:   'settings.c:1666,2'
          Branch Sides:
            - BranchSide:      'settings.c:1666,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:1666,2'
              BranchSideFuncs:
                - array_append_space_i.2904
                - array_append_space_i.2904
                - array_append_i.2931
                - array_idx_i.2924
                - array_idx_i.2924
                - array_idx_i.2924
      Callsites:
        - Src:             'settings.c:1639,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:1639,2'
          Dst:             array_create_i
        - Src:             'settings.c:1640,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:1640,2'
          Dst:             array_create_i
        - Src:             'settings.c:1641,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:1641,2'
          Dst:             array_create_i
        - Src:             'settings.c:1645,4'
          Dst:             event_get_ptr
        - Src:             'settings.c:1647,29'
          Dst:             event_get_ptr
        - Src:             'settings.c:1651,4'
          Dst:             settings_var_expand_init_add
        - Src:             'settings.c:1654,5'
          Dst:             event_get_ptr
        - Src:             'settings.c:1656,5'
          Dst:             settings_var_expand_init_add
        - Src:             'settings.c:1659,11'
          Dst:             event_get_parent
        - Src:             'settings.c:1663,28'
          Dst:             array_count_i
        - Src:             'settings.c:1664,27'
          Dst:             array_count_i
        - Src:             'settings.c:1665,25'
          Dst:             array_count_i
        - Src:             'settings.c:1666,2'
          Dst:             i_panic
        - Src:             'settings.c:1668,2'
          Dst:             array_append_space_i
        - Src:             'settings.c:1669,2'
          Dst:             array_append_space_i
        - Src:             'settings.c:1671,2'
          Dst:             array_append_i
        - Src:             'settings.c:1673,31'
          Dst:             array_idx_i
        - Src:             'settings.c:1674,34'
          Dst:             array_idx_i
        - Src:             'settings.c:1675,29'
          Dst:             array_idx_i
    - functionName:    settings_mmap_pool_create
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1508
      functionLinenumberEnd: 1526
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - root
        - mmap
        - source_filename
        - source_linenum
      BBCount:         11
      ICount:          119
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - settings_mmap_ref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:1522,6'
          Branch Sides:
            - BranchSide:      'settings.c:1523,21'
              BranchSideFuncs:
                - settings_mmap_ref
            - BranchSide:      'settings.c:1525,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1525,2'
          Branch Sides:
            - BranchSide:      'settings.c:1525,2'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:1525,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:1511,3'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:1513,10'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:1513,10'
          Dst:             p_malloc
        - Src:             'settings.c:1523,3'
          Dst:             settings_mmap_ref
    - functionName:    settings_mmap_pool_clear
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1475
      functionLinenumberEnd: 1477
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:1477,2'
          Dst:             i_panic
    - functionName:    settings_instance_get
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2505
      functionLinenumberEnd: 2583
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         47
      ICount:          356
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - array_create_i
        - event_add_str
        - event_find_field_recursive
        - i_panic
        - pool_datastack_create
        - pool_unref
        - settings_apply_ctx_overrides_deinit
        - settings_check
        - settings_instance_override
        - settings_instance_override_init
        - settings_mmap_apply
        - settings_mmap_apply_defaults
        - settings_mmap_pool_create
        - settings_overrides_find_filter
        - settings_parser_get_set
        - settings_parser_init
        - settings_var_expand_init
        - str_new
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2510,2'
          Branch Sides:
            - BranchSide:      'settings.c:2510,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2512,3'
              BranchSideFuncs:
                - event_find_field_recursive
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parser_get_set
                - pool_datastack_create
                - array_create_i.2938
                - str_new
                - array_create_i.2938
                - settings_instance_override_init
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
                - settings_var_expand_init
                - event_add_str
        - Branch String:   'settings.c:2514,6'
          Branch Sides:
            - BranchSide:      'settings.c:2515,17'
              BranchSideFuncs:
                - event_add_str
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parser_get_set
                - pool_datastack_create
                - array_create_i.2938
                - str_new
                - array_create_i.2938
                - settings_instance_override_init
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
                - settings_var_expand_init
            - BranchSide:      'settings.c:2517,41'
              BranchSideFuncs:
                - settings_mmap_pool_create
                - settings_parser_init
                - settings_parser_get_set
                - pool_datastack_create
                - array_create_i.2938
                - str_new
                - array_create_i.2938
                - settings_instance_override_init
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
                - settings_var_expand_init
        - Branch String:   'settings.c:2533,54'
          Branch Sides:
            - BranchSide:      'settings.c:2534,7'
              BranchSideFuncs:
                - settings_instance_override_init
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
                - settings_var_expand_init
            - BranchSide:      'settings.c:2537,38'
              BranchSideFuncs:
                - settings_instance_override_init
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
        - Branch String:   'settings.c:2533,6'
          Branch Sides:
            - BranchSide:      'settings.c:2535,28'
              BranchSideFuncs:
                - settings_var_expand_init
                - settings_instance_override_init
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
            - BranchSide:      'settings.c:2537,38'
              BranchSideFuncs:
                - settings_instance_override_init
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
        - Branch String:   'settings.c:2537,6'
          Branch Sides:
            - BranchSide:      'settings.c:2538,7'
              BranchSideFuncs:
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
            - BranchSide:      'settings.c:2539,11'
              BranchSideFuncs:
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - settings_mmap_apply
                - t_strdup_printf
        - Branch String:   'settings.c:2539,11'
          Branch Sides:
            - BranchSide:      'settings.c:2540,29'
              BranchSideFuncs:
                - settings_mmap_apply
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
                - t_strdup_printf
            - BranchSide:      'settings.c:2547,8'
              BranchSideFuncs:
                - settings_instance_override
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
        - Branch String:   'settings.c:2541,7'
          Branch Sides:
            - BranchSide:      'settings.c:2543,42'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
            - BranchSide:      'settings.c:2545,2'
              BranchSideFuncs:
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
        - Branch String:   'settings.c:2553,6'
          Branch Sides:
            - BranchSide:      'settings.c:2554,15'
              BranchSideFuncs:
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
            - BranchSide:      'settings.c:2555,38'
              BranchSideFuncs:
                - settings_apply_ctx_overrides_deinit
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
                - settings_mmap_apply_defaults
        - Branch String:   'settings.c:2557,6'
          Branch Sides:
            - BranchSide:      'settings.c:2558,38'
              BranchSideFuncs:
                - settings_mmap_apply_defaults
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
            - BranchSide:      'settings.c:2559,6'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
                - pool_unref.2935
        - Branch String:   'settings.c:2559,6'
          Branch Sides:
            - BranchSide:      'settings.c:2560,3'
              BranchSideFuncs:
                - pool_unref.2935
            - BranchSide:      'settings.c:2564,6'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
        - Branch String:   'settings.c:2564,30'
          Branch Sides:
            - BranchSide:      'settings.c:2564,34'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
                - settings_overrides_find_filter
                - pool_unref.2935
            - BranchSide:      'settings.c:2571,7'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
        - Branch String:   'settings.c:2564,46'
          Branch Sides:
            - BranchSide:      'settings.c:2565,6'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
            - BranchSide:      'settings.c:2571,7'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
        - Branch String:   'settings.c:2565,32'
          Branch Sides:
            - BranchSide:      'settings.c:2566,38'
              BranchSideFuncs:
                - settings_overrides_find_filter
                - pool_unref.2935
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
            - BranchSide:      'settings.c:2571,7'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
        - Branch String:   'settings.c:2564,6'
          Branch Sides:
            - BranchSide:      'settings.c:2567,3'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
            - BranchSide:      'settings.c:2571,7'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
        - Branch String:   'settings.c:2571,6'
          Branch Sides:
            - BranchSide:      'settings.c:2572,23'
              BranchSideFuncs:
                - settings_check
                - t_strdup_printf
                - pool_unref.2935
            - BranchSide:      'settings.c:2581,11'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2572,7'
          Branch Sides:
            - BranchSide:      'settings.c:2575,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2579,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:2510,2'
          Dst:             i_panic
        - Src:             'settings.c:2514,6'
          Dst:             event_find_field_recursive
        - Src:             'settings.c:2515,3'
          Dst:             event_add_str
        - Src:             'settings.c:2517,15'
          Dst:             settings_mmap_pool_create
        - Src:             'settings.c:2520,16'
          Dst:             settings_parser_init
        - Src:             'settings.c:2525,20'
          Dst:             settings_parser_get_set
        - Src:             'settings.c:2530,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:2530,2'
          Dst:             array_create_i
        - Src:             'settings.c:2531,13'
          Dst:             str_new
        - Src:             'settings.c:2532,2'
          Dst:             array_create_i
        - Src:             'settings.c:2535,3'
          Dst:             settings_var_expand_init
        - Src:             'settings.c:2537,6'
          Dst:             settings_instance_override_init
        - Src:             'settings.c:2540,9'
          Dst:             settings_mmap_apply
        - Src:             'settings.c:2542,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2550,9'
          Dst:             settings_instance_override
        - Src:             'settings.c:2555,2'
          Dst:             settings_apply_ctx_overrides_deinit
        - Src:             'settings.c:2558,9'
          Dst:             settings_mmap_apply_defaults
        - Src:             'settings.c:2560,3'
          Dst:             pool_unref
        - Src:             'settings.c:2566,7'
          Dst:             settings_overrides_find_filter
        - Src:             'settings.c:2567,3'
          Dst:             pool_unref
        - Src:             'settings.c:2572,8'
          Dst:             settings_check
        - Src:             'settings.c:2574,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2576,4'
          Dst:             pool_unref
    - functionName:    settings_event_convert_filter_names
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2587
      functionLinenumberEnd: 2615
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - src_event
        - dest_event
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - event_get_ptr
        - event_strlist_append
        - str_append
        - str_c
        - str_printfa
        - str_truncate
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2590,6'
          Branch Sides:
            - BranchSide:      'settings.c:2591,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2592,23'
              BranchSideFuncs:
                - event_strlist_append
                - event_get_ptr
                - event_strlist_append
                - t_str_new
                - str_append.2930
                - str_truncate.2918
                - str_printfa
                - str_c
                - event_get_ptr
                - event_strlist_append
        - Branch String:   'settings.c:2598,6'
          Branch Sides:
            - BranchSide:      'settings.c:2599,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2600,23'
              BranchSideFuncs:
                - event_strlist_append
                - t_str_new
                - str_append.2930
                - str_truncate.2918
                - str_printfa
                - str_c
                - event_get_ptr
                - event_strlist_append
        - Branch String:   'settings.c:2610,7'
          Branch Sides:
            - BranchSide:      'settings.c:2611,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2612,24'
              BranchSideFuncs:
                - event_strlist_append
                - str_truncate.2918
                - str_printfa
                - str_c
                - event_get_ptr
      Callsites:
        - Src:             'settings.c:2589,3'
          Dst:             event_get_ptr
        - Src:             'settings.c:2592,2'
          Dst:             event_strlist_append
        - Src:             'settings.c:2597,16'
          Dst:             event_get_ptr
        - Src:             'settings.c:2600,2'
          Dst:             event_strlist_append
        - Src:             'settings.c:2604,18'
          Dst:             t_str_new
        - Src:             'settings.c:2605,2'
          Dst:             str_append
        - Src:             'settings.c:2607,3'
          Dst:             str_truncate
        - Src:             'settings.c:2608,3'
          Dst:             str_printfa
        - Src:             'settings.c:2609,42'
          Dst:             str_c
        - Src:             'settings.c:2609,17'
          Dst:             event_get_ptr
        - Src:             'settings.c:2612,3'
          Dst:             event_strlist_append
    - functionName:    settings_sort_filter_array
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2773
      functionLinenumberEnd: 2893
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - field_name
        - order
        - fvals_arr
        - params
        - source_filename
        - source_linenum
        - error_r
      BBCount:         61
      ICount:          467
      EdgeCount:       63
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_get_i
        - array_get_modifiable_i
        - array_is_created_i
        - array_sort_i
        - i_panic
        - i_unreached
        - pool_datastack_create
        - pool_unref
        - setting_parser_info_find_key
        - settings_filter_array_str_cmp
        - settings_filter_array_uint_cmp
        - settings_get_real
        - t_pop_pass_str
        - t_push
        - t_strdup
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:2777,6'
          Branch Sides:
            - BranchSide:      'settings.c:2778,3'
              BranchSideFuncs:
                - setting_parser_info_find_key
                - i_panic
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2781,36'
              BranchSideFuncs:
                - setting_parser_info_find_key
                - i_panic
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2781,6'
          Branch Sides:
            - BranchSide:      'settings.c:2785,4'
              BranchSideFuncs:
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2788,2'
              BranchSideFuncs:
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2788,18'
          Branch Sides:
            - BranchSide:      'settings.c:2788,21'
              BranchSideFuncs:
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2788,2'
              BranchSideFuncs:
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2788,2'
          Branch Sides:
            - BranchSide:      'settings.c:2789,7'
              BranchSideFuncs:
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2797,44'
              BranchSideFuncs:
                - i_panic
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2798,2'
          Branch Sides:
            - BranchSide:      'settings.c:2803,13'
              BranchSideFuncs:
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2803,13'
              BranchSideFuncs:
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2803,13'
              BranchSideFuncs:
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2803,13'
              BranchSideFuncs:
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2807,13'
              BranchSideFuncs:
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2807,13'
              BranchSideFuncs:
                - array_get_modifiable_i.2901
                - pool_datastack_create
                - array_create_i.2938
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2812,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2816,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'settings.c:2824,2'
          Branch Sides:
            - BranchSide:      'settings.c:2828,3'
              BranchSideFuncs:
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2869,10'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
        - Branch String:   'settings.c:2833,5'
          Branch Sides:
            - BranchSide:      'settings.c:2833,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2833,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - i_unreached
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:2833,5'
          Branch Sides:
            - BranchSide:      'settings.c:2833,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2833,5'
              BranchSideFuncs:
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - i_panic
                - i_unreached
                - t_strdup_printf
        - Branch String:   'settings.c:2834,7'
          Branch Sides:
            - BranchSide:      'settings.c:2835,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2836,7'
              BranchSideFuncs:
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - i_panic
                - i_unreached
                - t_strdup_printf
        - Branch String:   'settings.c:2836,7'
          Branch Sides:
            - BranchSide:      'settings.c:2840,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:2844,20'
              BranchSideFuncs:
                - array_append_space_i.2904
                - t_strdup
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - t_strdup_printf
                - i_panic
                - i_unreached
        - Branch String:   'settings.c:2851,3'
          Branch Sides:
            - BranchSide:      'settings.c:2854,5'
              BranchSideFuncs:
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - t_strdup
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2858,5'
              BranchSideFuncs:
                - t_strdup
                - pool_unref.2935
                - array_sort_i
                - array_get_i.2899
                - i_panic
                - array_sort_i
                - i_unreached
                - t_push
                - settings_get_real
                - t_pop_pass_str
                - array_append_space_i.2904
                - i_unreached
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2862,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'settings.c:2869,2'
          Branch Sides:
            - BranchSide:      'settings.c:2871,3'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.2899
                - i_panic
            - BranchSide:      'settings.c:2874,3'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.2899
                - i_panic
            - BranchSide:      'settings.c:2877,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'settings.c:2885,2'
          Branch Sides:
            - BranchSide:      'settings.c:2885,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2886,9'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2886,2'
          Branch Sides:
            - BranchSide:      'settings.c:2887,8'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2892,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2887,7'
          Branch Sides:
            - BranchSide:      'settings.c:2888,15'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2890,15'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:2777,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:2781,7'
          Dst:             setting_parser_info_find_key
        - Src:             'settings.c:2783,3'
          Dst:             i_panic
        - Src:             'settings.c:2810,3'
          Dst:             i_panic
        - Src:             'settings.c:2814,3'
          Dst:             i_panic
        - Src:             'settings.c:2822,10'
          Dst:             array_get_modifiable_i
        - Src:             'settings.c:2823,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:2823,2'
          Dst:             array_create_i
        - Src:             'settings.c:2828,3'
          Dst:             t_push
        - Src:             'settings.c:2829,10'
          Dst:             settings_get_real
        - Src:             'settings.c:2833,5'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:2833,5'
          Dst:             i_panic
        - Src:             'settings.c:2837,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2848,10'
          Dst:             array_append_space_i
        - Src:             'settings.c:2859,22'
          Dst:             t_strdup
        - Src:             'settings.c:2862,4'
          Dst:             i_unreached
        - Src:             'settings.c:2865,3'
          Dst:             pool_unref
        - Src:             'settings.c:2871,3'
          Dst:             array_sort_i
        - Src:             'settings.c:2871,3'
          Dst:             settings_filter_array_uint_cmp
        - Src:             'settings.c:2874,3'
          Dst:             array_sort_i
        - Src:             'settings.c:2874,3'
          Dst:             settings_filter_array_str_cmp
        - Src:             'settings.c:2877,3'
          Dst:             i_unreached
        - Src:             'settings.c:2884,10'
          Dst:             array_get_i
        - Src:             'settings.c:2885,2'
          Dst:             i_panic
    - functionName:    settings_get_real
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2625
      functionLinenumberEnd: 2713
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - filter_key
        - filter_value
        - info
        - params
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         47
      ICount:          361
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - array_free_i
        - event_add_str
        - event_create
        - event_get_parent
        - event_get_ptr
        - event_strlist_append
        - event_unref
        - i_panic
        - pool_unref
        - settings_event_convert_filter_names
        - settings_instance_get
        - settings_parser_unref
        - settings_section_escape
        - str_free
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:2634,6'
          Branch Sides:
            - BranchSide:      'settings.c:2635,42'
              BranchSideFuncs:
                - settings_section_escape
                - t_strdup_printf
                - event_add_str
                - event_strlist_append
                - event_get_ptr
                - event_get_ptr
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2643,13'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_ptr
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_strlist_append
        - Branch String:   'settings.c:2655,7'
          Branch Sides:
            - BranchSide:      'settings.c:2656,11'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:2657,13'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:2657,31'
          Branch Sides:
            - BranchSide:      'settings.c:2657,34'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:2658,6'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:2657,53'
          Branch Sides:
            - BranchSide:      'settings.c:2658,6'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2661,4'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:2663,24'
          Branch Sides:
            - BranchSide:      'settings.c:2663,27'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:2668,39'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:2663,7'
          Branch Sides:
            - BranchSide:      'settings.c:2664,15'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
            - BranchSide:      'settings.c:2668,39'
              BranchSideFuncs:
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - event_get_ptr
                - event_get_ptr
        - Branch String:   'settings.c:2670,2'
          Branch Sides:
            - BranchSide:      'settings.c:2651,29'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_ptr
                - settings_event_convert_filter_names
                - event_get_parent
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
            - BranchSide:      'settings.c:2672,6'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:2672,6'
          Branch Sides:
            - BranchSide:      'settings.c:2673,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2674,6'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:2674,6'
          Branch Sides:
            - BranchSide:      'settings.c:2675,10'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:2677,10'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:2683,6'
          Branch Sides:
            - BranchSide:      'settings.c:2684,12'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'settings.c:2686,34'
              BranchSideFuncs:
                - settings_instance_get
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:2702,6'
          Branch Sides:
            - BranchSide:      'settings.c:2702,6'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
            - BranchSide:      'settings.c:2703,51'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
        - Branch String:   'settings.c:2704,4'
          Branch Sides:
            - BranchSide:      'settings.c:2705,36'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
            - BranchSide:      'settings.c:2706,5'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parser_unref
                - event_unref
                - array_free_i
                - str_free
                - pool_unref.2935
      Callsites:
        - Src:             'settings.c:2633,17'
          Dst:             event_create
        - Src:             'settings.c:2636,4'
          Dst:             settings_section_escape
        - Src:             'settings.c:2635,17'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2639,3'
          Dst:             event_add_str
        - Src:             'settings.c:2640,3'
          Dst:             event_strlist_append
        - Src:             'settings.c:2645,3'
          Dst:             event_strlist_append
        - Src:             'settings.c:2651,15'
          Dst:             event_get_ptr
        - Src:             'settings.c:2652,19'
          Dst:             event_get_ptr
        - Src:             'settings.c:2668,3'
          Dst:             settings_event_convert_filter_names
        - Src:             'settings.c:2669,16'
          Dst:             event_get_parent
        - Src:             'settings.c:2673,3'
          Dst:             i_panic
        - Src:             'settings.c:2700,12'
          Dst:             settings_instance_get
        - Src:             'settings.c:2705,4'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2703,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:2708,2'
          Dst:             settings_parser_unref
        - Src:             'settings.c:2709,2'
          Dst:             event_unref
        - Src:             'settings.c:2710,2'
          Dst:             array_free_i
        - Src:             'settings.c:2711,2'
          Dst:             str_free
        - Src:             'settings.c:2712,2'
          Dst:             pool_unref
    - functionName:    settings_block_read_size
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - offset
        - end_offset
        - name
        - size_r
        - error_r
      BBCount:         8
      ICount:          99
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_memcpy
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:252,6'
          Branch Sides:
            - BranchSide:      'settings.c:255,51'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:259,2'
              BranchSideFuncs:
                - i_memcpy.2906
                - t_strdup_printf
        - Branch String:   'settings.c:261,6'
          Branch Sides:
            - BranchSide:      'settings.c:265,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:269,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:253,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:259,2'
          Dst:             i_memcpy
        - Src:             'settings.c:262,14'
          Dst:             t_strdup_printf
    - functionName:    settings_filter_node_match_service
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - node
        - service_name
        - op_not
      BBCount:         38
      ICount:          214
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - settings_filter_node_match_service
        - str_begins
        - str_begins_builtin_success
        - strcmp
        - strncmp
      functionUses:    6
      BranchProfiles:
        - Branch String:   'settings.c:296,2'
          Branch Sides:
            - BranchSide:      'settings.c:298,7'
              BranchSideFuncs:
                - strcmp
                - str_begins
                - strcmp
                - strncmp
                - str_begins_builtin_success.2916
            - BranchSide:      'settings.c:307,43'
              BranchSideFuncs:
                - settings_filter_node_match_service
                - settings_filter_node_match_service
            - BranchSide:      'settings.c:314,43'
              BranchSideFuncs:
                - settings_filter_node_match_service
                - settings_filter_node_match_service
            - BranchSide:      'settings.c:321,45'
              BranchSideFuncs:
                - settings_filter_node_match_service
            - BranchSide:      'settings.c:324,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:298,62'
          Branch Sides:
            - BranchSide:      'settings.c:299,14'
              BranchSideFuncs:
                - strcmp
                - str_begins
                - strcmp
                - strncmp
                - str_begins_builtin_success.2916
            - BranchSide:      'settings.c:305,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:299,64'
          Branch Sides:
            - BranchSide:      'settings.c:300,7'
              BranchSideFuncs:
                - str_begins
                - strcmp
                - strncmp
                - str_begins_builtin_success.2916
            - BranchSide:      'settings.c:305,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:300,60'
          Branch Sides:
            - BranchSide:      'settings.c:298,7'
              BranchSideFuncs:
                - str_begins
                - strcmp
                - strncmp
                - str_begins_builtin_success.2916
            - BranchSide:      'settings.c:305,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:298,7'
          Branch Sides:
            - BranchSide:      'settings.c:301,7'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.2916
                - strcmp
            - BranchSide:      'settings.c:301,7'
              BranchSideFuncs:
                - str_begins
                - strcmp
        - Branch String:   'settings.c:301,7'
          Branch Sides:
            - BranchSide:      'settings.c:302,24'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings.c:305,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:298,7'
          Branch Sides:
            - BranchSide:      'settings.c:301,7'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings.c:301,7'
              BranchSideFuncs:
                - str_begins_builtin_success.2916
                - strcmp
        - Branch String:   'settings.c:301,7'
          Branch Sides:
            - BranchSide:      'settings.c:302,24'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:305,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:298,7'
          Branch Sides:
            - BranchSide:      'settings.c:302,24'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings.c:305,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:308,30'
          Branch Sides:
            - BranchSide:      'settings.c:309,43'
              BranchSideFuncs:
                - settings_filter_node_match_service
            - BranchSide:      'settings.c:311,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:307,7'
          Branch Sides:
            - BranchSide:      'settings.c:311,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:312,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:315,30'
          Branch Sides:
            - BranchSide:      'settings.c:316,43'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:319,3'
              BranchSideFuncs: []
        - Branch String:   'settings.c:314,7'
          Branch Sides:
            - BranchSide:      'settings.c:318,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:319,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:299,7'
          Dst:             strcmp
        - Src:             'settings.c:301,7'
          Dst:             str_begins
        - Src:             'settings.c:301,7'
          Dst:             strncmp
        - Src:             'settings.c:301,7'
          Dst:             str_begins_builtin_success
        - Src:             'settings.c:302,17'
          Dst:             strcmp
        - Src:             'settings.c:307,8'
          Dst:             settings_filter_node_match_service
        - Src:             'settings.c:309,8'
          Dst:             settings_filter_node_match_service
        - Src:             'settings.c:314,8'
          Dst:             settings_filter_node_match_service
        - Src:             'settings.c:316,8'
          Dst:             settings_filter_node_match_service
        - Src:             'settings.c:321,10'
          Dst:             settings_filter_node_match_service
    - functionName:    settings_local_name_cmp
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - value
        - wanted_value
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dns_match_wildcard
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:198,9'
          Dst:             dns_match_wildcard
    - functionName:    settings_filter_match_service
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - service_name
      BBCount:         11
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_get_root_node
        - i_panic
        - settings_filter_node_match_service
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:334,2'
          Branch Sides:
            - BranchSide:      'settings.c:334,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:335,2'
              BranchSideFuncs:
                - event_filter_get_root_node
                - settings_filter_node_match_service
                - i_panic
        - Branch String:   'settings.c:335,2'
          Branch Sides:
            - BranchSide:      'settings.c:335,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:335,2'
              BranchSideFuncs:
                - settings_filter_node_match_service
      Callsites:
        - Src:             'settings.c:333,35'
          Dst:             event_filter_get_root_node
        - Src:             'settings.c:334,2'
          Dst:             i_panic
        - Src:             'settings.c:335,2'
          Dst:             event_filter_get_root_node
        - Src:             'settings.c:335,2'
          Dst:             i_panic
        - Src:             'settings.c:336,9'
          Dst:             settings_filter_node_match_service
    - functionName:    settings_block_read_uint64
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - offset
        - end_offset
        - name
        - num_r
        - error_r
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_memcpy
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:214,6'
          Branch Sides:
            - BranchSide:      'settings.c:217,51'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:221,2'
              BranchSideFuncs:
                - i_memcpy.2906
      Callsites:
        - Src:             'settings.c:215,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:221,2'
          Dst:             i_memcpy
    - functionName:    settings_block_read_uint32
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - offset
        - end_offset
        - name
        - num_r
        - error_r
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_memcpy
        - t_strdup_printf
      functionUses:    14
      BranchProfiles:
        - Branch String:   'settings.c:233,6'
          Branch Sides:
            - BranchSide:      'settings.c:236,51'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:240,2'
              BranchSideFuncs:
                - i_memcpy.2906
      Callsites:
        - Src:             'settings.c:234,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:240,2'
          Dst:             i_memcpy
    - functionName:    settings_block_read
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - _offset
        - error_r
      BBCount:         45
      ICount:          398
      EdgeCount:       62
      CyclomaticComplexity: 19
      functionsReached:
        - hash_table_insert
        - hash_table_lookup
        - malloc_multiply_check
        - p_malloc
        - settings_block_read_size
        - settings_block_read_str
        - settings_block_read_uint32
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:585,6'
          Branch Sides:
            - BranchSide:      'settings.c:587,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:588,28'
              BranchSideFuncs:
                - settings_block_read_str
                - hash_table_lookup
                - malloc_multiply_check.2907
                - p_malloc.2908
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
                - settings_block_read_str
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings.c:594,6'
          Branch Sides:
            - BranchSide:      'settings.c:597,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:603,30'
              BranchSideFuncs:
                - settings_block_read_str
                - hash_table_lookup
                - malloc_multiply_check.2907
                - p_malloc.2908
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
                - settings_block_read_str
                - t_strdup_printf
        - Branch String:   'settings.c:603,6'
          Branch Sides:
            - BranchSide:      'settings.c:605,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:608,3'
              BranchSideFuncs:
                - hash_table_lookup
                - malloc_multiply_check.2907
                - p_malloc.2908
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
                - settings_block_read_str
                - t_strdup_printf
        - Branch String:   'settings.c:609,6'
          Branch Sides:
            - BranchSide:      'settings.c:612,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:615,10'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - hash_table_insert
                - settings_block_read_uint32
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:621,6'
          Branch Sides:
            - BranchSide:      'settings.c:624,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:625,32'
              BranchSideFuncs:
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:627,2'
          Branch Sides:
            - BranchSide:      'settings.c:628,31'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
            - BranchSide:      'settings.c:634,33'
              BranchSideFuncs:
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:628,7'
          Branch Sides:
            - BranchSide:      'settings.c:630,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:631,2'
              BranchSideFuncs:
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:634,6'
          Branch Sides:
            - BranchSide:      'settings.c:637,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:641,18'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:641,2'
          Branch Sides:
            - BranchSide:      'settings.c:644,32'
              BranchSideFuncs:
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_str
                - settings_block_read_str
            - BranchSide:      'settings.c:687,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:644,7'
          Branch Sides:
            - BranchSide:      'settings.c:647,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:650,23'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:652,7'
          Branch Sides:
            - BranchSide:      'settings.c:656,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:659,34'
              BranchSideFuncs:
                - settings_block_read_uint32
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:659,7'
          Branch Sides:
            - BranchSide:      'settings.c:663,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:665,17'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:665,3'
          Branch Sides:
            - BranchSide:      'settings.c:668,32'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_str
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
            - BranchSide:      'settings.c:684,13'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:668,8'
          Branch Sides:
            - BranchSide:      'settings.c:672,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:676,32'
              BranchSideFuncs:
                - settings_block_read_str
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
        - Branch String:   'settings.c:676,8'
          Branch Sides:
            - BranchSide:      'settings.c:680,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:681,3'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_block_read_size
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_block_read_str
                - settings_block_read_str
        - Branch String:   'settings.c:687,6'
          Branch Sides:
            - BranchSide:      'settings.c:688,32'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:689,26'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:695,6'
          Branch Sides:
            - BranchSide:      'settings.c:698,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:701,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:585,6'
          Dst:             settings_block_read_size
        - Src:             'settings.c:595,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:603,6'
          Dst:             settings_block_read_str
        - Src:             'settings.c:608,3'
          Dst:             hash_table_lookup
        - Src:             'settings.c:610,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:615,10'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:615,10'
          Dst:             p_malloc
        - Src:             'settings.c:618,2'
          Dst:             hash_table_insert
        - Src:             'settings.c:621,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:628,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:634,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:644,7'
          Dst:             settings_block_read_size
        - Src:             'settings.c:652,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:659,7'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:668,8'
          Dst:             settings_block_read_str
        - Src:             'settings.c:676,8'
          Dst:             settings_block_read_str
        - Src:             'settings.c:696,14'
          Dst:             t_strdup_printf
    - functionName:    settings_read_filters
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - service_name
        - flags
        - offset
        - protocols
        - error_r
      BBCount:         42
      ICount:          322
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - array_append_i
        - array_lsearch_i
        - event_filter_create
        - event_filter_create_with_pool
        - event_filter_find_field_exact
        - event_filter_has_field_prefix
        - event_filter_merge
        - event_filter_parse_case_sensitive
        - event_filter_register_cmp
        - event_filter_unref
        - i_strcmp_p
        - malloc_multiply_check
        - p_malloc
        - pool_ref
        - settings_block_read_str
        - settings_block_read_uint32
        - settings_filter_match_service
        - settings_local_name_cmp
        - strcmp
        - t_strconcat
        - t_strdup
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:495,6'
          Branch Sides:
            - BranchSide:      'settings.c:499,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:501,24'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:501,24'
          Branch Sides:
            - BranchSide:      'settings.c:501,2'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:502,3'
              BranchSideFuncs:
                - malloc_multiply_check.2907
                - p_malloc.2908
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:505,2'
          Branch Sides:
            - BranchSide:      'settings.c:507,5'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:572,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:508,7'
          Branch Sides:
            - BranchSide:      'settings.c:511,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:512,34'
              BranchSideFuncs:
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:512,7'
          Branch Sides:
            - BranchSide:      'settings.c:516,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:518,7'
              BranchSideFuncs:
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:518,7'
          Branch Sides:
            - BranchSide:      'settings.c:519,4'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:523,37'
              BranchSideFuncs:
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:524,7'
          Branch Sides:
            - BranchSide:      'settings.c:528,5'
              BranchSideFuncs:
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:534,34'
              BranchSideFuncs:
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
        - Branch String:   'settings.c:535,7'
          Branch Sides:
            - BranchSide:      'settings.c:536,8'
              BranchSideFuncs:
                - array_lsearch_i
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
            - BranchSide:      'settings.c:552,7'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
        - Branch String:   'settings.c:536,8'
          Branch Sides:
            - BranchSide:      'settings.c:537,30'
              BranchSideFuncs:
                - t_strconcat
                - array_lsearch_i
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
            - BranchSide:      'settings.c:538,8'
              BranchSideFuncs:
                - array_lsearch_i
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
        - Branch String:   'settings.c:538,8'
          Branch Sides:
            - BranchSide:      'settings.c:539,22'
              BranchSideFuncs:
                - t_strdup
                - array_append_i.2931
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - strcmp
                - event_filter_unref
            - BranchSide:      'settings.c:543,8'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - strcmp
                - event_filter_unref
        - Branch String:   'settings.c:543,42'
          Branch Sides:
            - BranchSide:      'settings.c:544,16'
              BranchSideFuncs:
                - strcmp
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - event_filter_unref
            - BranchSide:      'settings.c:551,3'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
        - Branch String:   'settings.c:544,66'
          Branch Sides:
            - BranchSide:      'settings.c:545,9'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - event_filter_unref
            - BranchSide:      'settings.c:551,3'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
        - Branch String:   'settings.c:543,8'
          Branch Sides:
            - BranchSide:      'settings.c:547,5'
              BranchSideFuncs:
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:551,3'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
                - settings_filter_match_service
                - event_filter_unref
        - Branch String:   'settings.c:552,28'
          Branch Sides:
            - BranchSide:      'settings.c:553,38'
              BranchSideFuncs:
                - settings_filter_match_service
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:560,34'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
        - Branch String:   'settings.c:552,7'
          Branch Sides:
            - BranchSide:      'settings.c:555,4'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
            - BranchSide:      'settings.c:560,34'
              BranchSideFuncs:
                - event_filter_has_field_prefix
                - event_filter_create_with_pool
                - event_filter_register_cmp
                - pool_ref.2905
                - event_filter_merge
                - event_filter_unref
                - settings_block_read_str
                - settings_block_read_uint32
                - event_filter_create
                - event_filter_parse_case_sensitive
                - event_filter_find_field_exact
                - settings_filter_match_service
                - event_filter_unref
                - array_lsearch_i
                - strcmp
                - event_filter_unref
                - t_strdup
                - array_append_i.2931
                - t_strconcat
                - t_strdup_printf
                - event_filter_unref
      Callsites:
        - Src:             'settings.c:495,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:502,3'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:502,3'
          Dst:             p_malloc
        - Src:             'settings.c:508,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:512,7'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:523,37'
          Dst:             event_filter_create
        - Src:             'settings.c:524,7'
          Dst:             event_filter_parse_case_sensitive
        - Src:             'settings.c:526,15'
          Dst:             t_strdup_printf
        - Src:             'settings.c:529,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:534,4'
          Dst:             event_filter_find_field_exact
        - Src:             'settings.c:537,13'
          Dst:             t_strconcat
        - Src:             'settings.c:538,8'
          Dst:             array_lsearch_i
        - Src:             'settings.c:538,8'
          Dst:             i_strcmp_p
        - Src:             'settings.c:539,13'
          Dst:             t_strdup
        - Src:             'settings.c:540,5'
          Dst:             array_append_i
        - Src:             'settings.c:544,9'
          Dst:             strcmp
        - Src:             'settings.c:548,5'
          Dst:             event_filter_unref
        - Src:             'settings.c:553,8'
          Dst:             settings_filter_match_service
        - Src:             'settings.c:556,4'
          Dst:             event_filter_unref
        - Src:             'settings.c:560,4'
          Dst:             event_filter_has_field_prefix
        - Src:             'settings.c:564,24'
          Dst:             event_filter_create_with_pool
        - Src:             'settings.c:565,3'
          Dst:             event_filter_register_cmp
        - Src:             'settings.c:565,3'
          Dst:             settings_local_name_cmp
        - Src:             'settings.c:567,3'
          Dst:             pool_ref
        - Src:             'settings.c:568,3'
          Dst:             event_filter_merge
        - Src:             'settings.c:570,3'
          Dst:             event_filter_unref
    - functionName:    settings_read_all_keys
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - offset
        - error_r
      BBCount:         15
      ICount:          166
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - settings_block_read_uint32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:452,6'
          Branch Sides:
            - BranchSide:      'settings.c:455,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:456,24'
              BranchSideFuncs:
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
        - Branch String:   'settings.c:459,6'
          Branch Sides:
            - BranchSide:      'settings.c:460,34'
              BranchSideFuncs:
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
            - BranchSide:      'settings.c:462,33'
              BranchSideFuncs:
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
        - Branch String:   'settings.c:462,6'
          Branch Sides:
            - BranchSide:      'settings.c:466,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:467,33'
              BranchSideFuncs:
                - settings_block_read_uint32
                - settings_block_read_uint32
        - Branch String:   'settings.c:467,6'
          Branch Sides:
            - BranchSide:      'settings.c:471,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:472,24'
              BranchSideFuncs:
                - settings_block_read_uint32
        - Branch String:   'settings.c:476,6'
          Branch Sides:
            - BranchSide:      'settings.c:480,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:482,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:452,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:462,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:467,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:476,6'
          Dst:             settings_block_read_uint32
    - functionName:    settings_read_config_paths
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - flags
        - offset
        - error_r
      BBCount:         50
      ICount:          316
      EdgeCount:       71
      CyclomaticComplexity: 23
      functionsReached:
        - __errno_location
        - settings_block_read_str
        - settings_block_read_uint32
        - settings_block_read_uint64
        - stat
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:389,6'
          Branch Sides:
            - BranchSide:      'settings.c:392,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:394,16'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:394,2'
          Branch Sides:
            - BranchSide:      'settings.c:396,31'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'settings.c:444,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:396,7'
          Branch Sides:
            - BranchSide:      'settings.c:399,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:401,34'
              BranchSideFuncs:
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - settings_block_read_str
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:401,7'
          Branch Sides:
            - BranchSide:      'settings.c:404,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:405,34'
              BranchSideFuncs:
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - settings_block_read_str
                - settings_block_read_uint64
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:405,7'
          Branch Sides:
            - BranchSide:      'settings.c:408,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:410,34'
              BranchSideFuncs:
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:410,7'
          Branch Sides:
            - BranchSide:      'settings.c:413,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:414,34'
              BranchSideFuncs:
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:414,7'
          Branch Sides:
            - BranchSide:      'settings.c:417,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:419,34'
              BranchSideFuncs:
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:419,7'
          Branch Sides:
            - BranchSide:      'settings.c:422,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:423,34'
              BranchSideFuncs:
                - settings_block_read_uint32
                - stat
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:423,7'
          Branch Sides:
            - BranchSide:      'settings.c:426,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:428,8'
              BranchSideFuncs:
                - stat
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:428,7'
          Branch Sides:
            - BranchSide:      'settings.c:429,4'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'settings.c:432,12'
              BranchSideFuncs:
                - stat
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:432,7'
          Branch Sides:
            - BranchSide:      'settings.c:433,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'settings.c:439,10'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'settings.c:433,24'
          Branch Sides:
            - BranchSide:      'settings.c:433,27'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:434,5'
              BranchSideFuncs: []
        - Branch String:   'settings.c:433,27'
          Branch Sides:
            - BranchSide:      'settings.c:433,27'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:434,5'
              BranchSideFuncs: []
        - Branch String:   'settings.c:433,27'
          Branch Sides:
            - BranchSide:      'settings.c:433,27'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:434,5'
              BranchSideFuncs: []
        - Branch String:   'settings.c:433,8'
          Branch Sides:
            - BranchSide:      'settings.c:434,5'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:436,10'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:439,26'
          Branch Sides:
            - BranchSide:      'settings.c:439,40'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:442,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:439,56'
          Branch Sides:
            - BranchSide:      'settings.c:440,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:442,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:440,32'
          Branch Sides:
            - BranchSide:      'settings.c:440,35'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:442,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:440,67'
          Branch Sides:
            - BranchSide:      'settings.c:441,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:442,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:441,32'
          Branch Sides:
            - BranchSide:      'settings.c:441,35'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:442,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:439,7'
          Branch Sides:
            - BranchSide:      'settings.c:442,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:443,2'
              BranchSideFuncs:
                - settings_block_read_str
                - settings_block_read_uint64
                - settings_block_read_uint64
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - settings_block_read_uint32
                - stat
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
      Callsites:
        - Src:             'settings.c:389,6'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:396,7'
          Dst:             settings_block_read_str
        - Src:             'settings.c:401,7'
          Dst:             settings_block_read_uint64
        - Src:             'settings.c:405,7'
          Dst:             settings_block_read_uint64
        - Src:             'settings.c:410,7'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:414,7'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:419,7'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:423,7'
          Dst:             settings_block_read_uint32
        - Src:             'settings.c:432,7'
          Dst:             stat
        - Src:             'settings.c:433,8'
          Dst:             __errno_location
        - Src:             'settings.c:433,27'
          Dst:             __errno_location
        - Src:             'settings.c:433,27'
          Dst:             __errno_location
        - Src:             'settings.c:433,27'
          Dst:             __errno_location
        - Src:             'settings.c:435,15'
          Dst:             t_strdup_printf
    - 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:    184
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_simple_deinit
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3338
      functionLinenumberEnd: 3342
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_unref
        - settings_instance_free
        - settings_root_deinit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:3339,2'
          Dst:             settings_instance_free
        - Src:             'settings.c:3340,2'
          Dst:             settings_root_deinit
        - Src:             'settings.c:3341,2'
          Dst:             event_unref
    - functionName:    settings_instance_free
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3230
      functionLinenumberEnd: 3244
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _instance
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - pool_unref
        - settings_override_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:3234,6'
          Branch Sides:
            - BranchSide:      'settings.c:3235,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3237,3'
              BranchSideFuncs:
                - array_is_created_i.2914
                - pool_unref.2935
                - buffer_get_modifiable_data
                - settings_override_free
        - Branch String:   'settings.c:3239,6'
          Branch Sides:
            - BranchSide:      'settings.c:3240,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - pool_unref.2935
                - settings_override_free
            - BranchSide:      'settings.c:3243,14'
              BranchSideFuncs:
                - pool_unref.2935
        - Branch String:   'settings.c:3240,3'
          Branch Sides:
            - BranchSide:      'settings.c:3241,27'
              BranchSideFuncs:
                - settings_override_free
                - pool_unref.2935
            - BranchSide:      'settings.c:3242,2'
              BranchSideFuncs:
                - pool_unref.2935
      Callsites:
        - Src:             'settings.c:3239,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:3240,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:3241,4'
          Dst:             settings_override_free
        - Src:             'settings.c:3243,2'
          Dst:             pool_unref
    - functionName:    settings_root_deinit
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3255
      functionLinenumberEnd: 3275
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _root
      BBCount:         17
      ICount:          110
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - i_warning
        - pool_unref
        - settings_mmap_unref
        - settings_override_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:3260,6'
          Branch Sides:
            - BranchSide:      'settings.c:3261,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3262,3'
              BranchSideFuncs:
                - array_is_created_i.2914
                - settings_mmap_unref
                - pool_unref.2935
                - i_warning
                - buffer_get_modifiable_data
                - settings_override_free
        - Branch String:   'settings.c:3264,6'
          Branch Sides:
            - BranchSide:      'settings.c:3265,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - settings_mmap_unref
                - pool_unref.2935
                - i_warning
                - settings_override_free
            - BranchSide:      'settings.c:3268,23'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_unref.2935
                - i_warning
        - Branch String:   'settings.c:3265,3'
          Branch Sides:
            - BranchSide:      'settings.c:3266,27'
              BranchSideFuncs:
                - settings_override_free
                - settings_mmap_unref
                - pool_unref.2935
                - i_warning
            - BranchSide:      'settings.c:3267,2'
              BranchSideFuncs:
                - settings_mmap_unref
                - pool_unref.2935
                - i_warning
        - Branch String:   'settings.c:3270,2'
          Branch Sides:
            - BranchSide:      'settings.c:3272,6'
              BranchSideFuncs:
                - i_warning
                - pool_unref.2935
            - BranchSide:      'settings.c:3274,14'
              BranchSideFuncs:
                - pool_unref.2935
      Callsites:
        - Src:             'settings.c:3264,6'
          Dst:             array_is_created_i
        - Src:             'settings.c:3265,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:3266,4'
          Dst:             settings_override_free
        - Src:             'settings.c:3268,2'
          Dst:             settings_mmap_unref
        - Src:             'settings.c:3271,3'
          Dst:             i_warning
        - Src:             'settings.c:3274,2'
          Dst:             pool_unref
    - functionName:    settings_simple_update
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3346
      functionLinenumberEnd: 3354
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - settings
      BBCount:         7
      ICount:          71
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - event_set_ptr
        - settings_instance_free
        - settings_instance_new
        - settings_override
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:3349,2'
          Branch Sides:
            - BranchSide:      'settings.c:3350,21'
              BranchSideFuncs:
                - settings_override
                - event_set_ptr
            - BranchSide:      'settings.c:3353,16'
              BranchSideFuncs:
                - event_set_ptr
      Callsites:
        - Src:             'settings.c:3347,2'
          Dst:             settings_instance_free
        - Src:             'settings.c:3348,18'
          Dst:             settings_instance_new
        - Src:             'settings.c:3350,3'
          Dst:             settings_override
        - Src:             'settings.c:3353,2'
          Dst:             event_set_ptr
    - functionName:    settings_instance_new
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3194
      functionLinenumberEnd: 3198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - root
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_instance_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:3195,39'
          Dst:             settings_instance_alloc
    - functionName:    settings_override
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3084
      functionLinenumberEnd: 3091
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - instance
        - key
        - value
        - type
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
        - settings_override_fill
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:3085,6'
          Branch Sides:
            - BranchSide:      'settings.c:3085,6'
              BranchSideFuncs:
                - array_append_space_i.2904
                - settings_override_fill
            - BranchSide:      'settings.c:3086,3'
              BranchSideFuncs:
                - array_create_i.2938
                - array_append_space_i.2904
                - settings_override_fill
      Callsites:
        - Src:             'settings.c:3085,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:3086,3'
          Dst:             array_create_i
        - Src:             'settings.c:3088,3'
          Dst:             array_append_space_i
        - Src:             'settings.c:3090,2'
          Dst:             settings_override_fill
    - functionName:    settings_override_fill
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3063
      functionLinenumberEnd: 3079
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - set
        - pool
        - key
        - value
        - type
      BBCount:         20
      ICount:          152
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - __ctype_b_loc
        - i_panic
        - p_strdup
        - strlen
        - t_pop
        - t_push
        - t_strndup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:3068,15'
          Branch Sides:
            - BranchSide:      'settings.c:3068,18'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
                - t_strndup
                - __ctype_b_loc
            - BranchSide:      'settings.c:3076,39'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
        - Branch String:   'settings.c:3068,7'
          Branch Sides:
            - BranchSide:      'settings.c:3070,4'
              BranchSideFuncs:
                - t_strndup
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
                - __ctype_b_loc
            - BranchSide:      'settings.c:3076,39'
              BranchSideFuncs:
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
        - Branch String:   'settings.c:3072,19'
          Branch Sides:
            - BranchSide:      'settings.c:3072,22'
              BranchSideFuncs:
                - __ctype_b_loc
                - t_strndup
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
            - BranchSide:      'settings.c:3072,4'
              BranchSideFuncs:
                - t_strndup
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
                - __ctype_b_loc
        - Branch String:   'settings.c:3072,4'
          Branch Sides:
            - BranchSide:      'settings.c:3073,8'
              BranchSideFuncs:
                - t_strndup
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
                - __ctype_b_loc
            - BranchSide:      'settings.c:3074,20'
              BranchSideFuncs:
                - t_strndup
                - p_strdup
                - p_strdup
                - t_pop
                - i_panic
        - Branch String:   'settings.c:3078,4'
          Branch Sides:
            - BranchSide:      'settings.c:3078,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:3078,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:3066,15'
          Dst:             strlen
        - Src:             'settings.c:3067,2'
          Dst:             t_push
        - Src:             'settings.c:3072,22'
          Dst:             __ctype_b_loc
        - Src:             'settings.c:3074,10'
          Dst:             t_strndup
        - Src:             'settings.c:3076,30'
          Dst:             p_strdup
        - Src:             'settings.c:3077,16'
          Dst:             p_strdup
        - Src:             'settings.c:3078,4'
          Dst:             t_pop
        - Src:             'settings.c:3078,4'
          Dst:             i_panic
    - functionName:    settings_instance_alloc
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3184
      functionLinenumberEnd: 3189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:3185,16'
          Branch Sides:
            - BranchSide:      'settings.c:3185,9'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.2907
                - p_malloc.2908
            - BranchSide:      'settings.c:3185,16'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.2907
                - p_malloc.2908
      Callsites:
        - Src:             'settings.c:3185,16'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:3187,3'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:3187,3'
          Dst:             p_malloc
    - functionName:    settings_simple_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3328
      functionLinenumberEnd: 3335
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set_r
        - settings
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_create
        - event_set_ptr
        - settings_root_init
        - settings_simple_update
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3333,6'
          Branch Sides:
            - BranchSide:      'settings.c:3333,6'
              BranchSideFuncs:
                - settings_simple_update
            - BranchSide:      'settings.c:3334,26'
              BranchSideFuncs:
                - settings_simple_update
      Callsites:
        - Src:             'settings.c:3330,16'
          Dst:             settings_root_init
        - Src:             'settings.c:3331,17'
          Dst:             event_create
        - Src:             'settings.c:3332,2'
          Dst:             event_set_ptr
        - Src:             'settings.c:3334,3'
          Dst:             settings_simple_update
    - functionName:    settings_root_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3247
      functionLinenumberEnd: 3251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:3248,16'
          Branch Sides:
            - BranchSide:      'settings.c:3248,9'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.2907
                - p_malloc.2908
            - BranchSide:      'settings.c:3248,16'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.2907
                - p_malloc.2908
      Callsites:
        - Src:             'settings.c:3248,16'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:3249,31'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:3249,31'
          Dst:             p_malloc
    - functionName:    settings_instance_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3314
      functionLinenumberEnd: 3324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - event_get_parent
        - event_get_ptr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3319,7'
          Branch Sides:
            - BranchSide:      'settings.c:3320,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3321,28'
              BranchSideFuncs:
                - event_get_parent
                - event_get_ptr
        - Branch String:   'settings.c:3322,2'
          Branch Sides:
            - BranchSide:      'settings.c:3318,28'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_parent
            - BranchSide:      'settings.c:3323,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:3318,14'
          Dst:             event_get_ptr
        - Src:             'settings.c:3321,11'
          Dst:             event_get_parent
    - functionName:    settings_root_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3278
      functionLinenumberEnd: 3288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - event_get_parent
        - event_get_ptr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3283,7'
          Branch Sides:
            - BranchSide:      'settings.c:3284,11'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3285,28'
              BranchSideFuncs:
                - event_get_parent
                - event_get_ptr
        - Branch String:   'settings.c:3286,2'
          Branch Sides:
            - BranchSide:      'settings.c:3282,24'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_parent
            - BranchSide:      'settings.c:3287,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:3282,10'
          Dst:             event_get_ptr
        - Src:             'settings.c:3285,11'
          Dst:             event_get_parent
    - functionName:    settings_instance_dup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3203
      functionLinenumberEnd: 3227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - src
      BBCount:         10
      ICount:          146
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_is_created_i
        - p_strdup
        - settings_instance_alloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3208,6'
          Branch Sides:
            - BranchSide:      'settings.c:3209,10'
              BranchSideFuncs:
                - array_count_i.2900
                - array_create_i.2938
                - array_append_space_i.2904
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:3211,2'
              BranchSideFuncs:
                - array_count_i.2900
                - array_create_i.2938
                - array_append_space_i.2904
                - p_strdup
                - p_strdup
        - Branch String:   'settings.c:3214,2'
          Branch Sides:
            - BranchSide:      'settings.c:3216,4'
              BranchSideFuncs:
                - array_append_space_i.2904
                - p_strdup
                - p_strdup
            - BranchSide:      'settings.c:3226,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:3204,35'
          Dst:             settings_instance_alloc
        - Src:             'settings.c:3208,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:3211,2'
          Dst:             array_count_i
        - Src:             'settings.c:3211,2'
          Dst:             array_create_i
        - Src:             'settings.c:3216,4'
          Dst:             array_append_space_i
        - Src:             'settings.c:3221,24'
          Dst:             p_strdup
        - Src:             'settings.c:3223,21'
          Dst:             p_strdup
    - functionName:    settings_event_add_list_filter_name
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3174
      functionLinenumberEnd: 3180
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
        - value
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_get_pool
        - event_set_ptr
        - p_strconcat
        - settings_event_get_free_filter_name_key
        - settings_section_escape
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:3176,15'
          Dst:             event_get_pool
        - Src:             'settings.c:3177,18'
          Dst:             settings_section_escape
        - Src:             'settings.c:3176,3'
          Dst:             p_strconcat
        - Src:             'settings.c:3178,23'
          Dst:             settings_event_get_free_filter_name_key
        - Src:             'settings.c:3178,2'
          Dst:             event_set_ptr
    - functionName:    settings_event_get_free_filter_name_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3151
      functionLinenumberEnd: 3164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         11
      ICount:          62
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - event_get_ptr
        - str_append
        - str_c
        - str_printfa
        - str_truncate
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings.c:3152,6'
          Branch Sides:
            - BranchSide:      'settings.c:3153,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3155,18'
              BranchSideFuncs:
                - t_str_new
                - str_append.2930
                - str_truncate.2918
                - str_printfa
                - str_c
                - event_get_ptr
                - str_c
        - Branch String:   'settings.c:3160,7'
          Branch Sides:
            - BranchSide:      'settings.c:3161,4'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'settings.c:3162,2'
              BranchSideFuncs:
                - str_truncate.2918
                - str_printfa
                - str_c
                - event_get_ptr
                - str_c
      Callsites:
        - Src:             'settings.c:3152,6'
          Dst:             event_get_ptr
        - Src:             'settings.c:3155,18'
          Dst:             t_str_new
        - Src:             'settings.c:3156,2'
          Dst:             str_append
        - Src:             'settings.c:3158,3'
          Dst:             str_truncate
        - Src:             'settings.c:3159,3'
          Dst:             str_printfa
        - Src:             'settings.c:3160,28'
          Dst:             str_c
        - Src:             'settings.c:3160,7'
          Dst:             event_get_ptr
        - Src:             'settings.c:3163,9'
          Dst:             str_c
    - functionName:    settings_event_add_filter_name
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3167
      functionLinenumberEnd: 3170
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - name
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_get_pool
        - event_set_ptr
        - p_strdup
        - settings_event_get_free_filter_name_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings.c:3168,23'
          Dst:             settings_event_get_free_filter_name_key
        - Src:             'settings.c:3169,18'
          Dst:             event_get_pool
        - Src:             'settings.c:3169,9'
          Dst:             p_strdup
        - Src:             'settings.c:3168,2'
          Dst:             event_set_ptr
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:244,2'
          Dst:             buffer_delete
    - functionName:    settings_override_equals
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3108
      functionLinenumberEnd: 3126
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - set
        - key
        - type
      BBCount:         15
      ICount:          129
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - strcmp
        - strlen
        - strncmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:3110,33'
          Branch Sides:
            - BranchSide:      'settings.c:3110,7'
              BranchSideFuncs:
                - strcmp
                - strlen
                - strncmp
            - BranchSide:      'settings.c:3111,7'
              BranchSideFuncs:
                - strcmp
                - strlen
                - strncmp
        - Branch String:   'settings.c:3113,6'
          Branch Sides:
            - BranchSide:      'settings.c:3114,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3115,6'
              BranchSideFuncs:
                - strcmp
                - strlen
                - strncmp
        - Branch String:   'settings.c:3115,6'
          Branch Sides:
            - BranchSide:      'settings.c:3116,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3118,6'
              BranchSideFuncs:
                - strcmp
                - strlen
                - strncmp
        - Branch String:   'settings.c:3118,6'
          Branch Sides:
            - BranchSide:      'settings.c:3119,27'
              BranchSideFuncs:
                - strlen
                - strncmp
            - BranchSide:      'settings.c:3125,17'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'settings.c:3121,7'
          Branch Sides:
            - BranchSide:      'settings.c:3122,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3123,19'
              BranchSideFuncs:
                - strncmp
      Callsites:
        - Src:             'settings.c:3109,19'
          Dst:             strlen
        - Src:             'settings.c:3119,20'
          Dst:             strlen
        - Src:             'settings.c:3123,11'
          Dst:             strncmp
        - Src:             'settings.c:3125,10'
          Dst:             strcmp
    - functionName:    settings_root_override_remove
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3131
      functionLinenumberEnd: 3148
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - root
        - key
        - type
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_delete_i
        - array_is_created_i
        - buffer_get_modifiable_data
        - settings_override_equals
        - settings_override_free
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3132,6'
          Branch Sides:
            - BranchSide:      'settings.c:3133,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - settings_override_equals
                - settings_override_free
                - array_delete_i.2995
            - BranchSide:      'settings.c:3137,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - settings_override_equals
                - settings_override_free
                - array_delete_i.2995
        - Branch String:   'settings.c:3137,2'
          Branch Sides:
            - BranchSide:      'settings.c:3138,33'
              BranchSideFuncs:
                - settings_override_equals
                - settings_override_free
                - array_delete_i.2995
            - BranchSide:      'settings.c:3147,2'
              BranchSideFuncs: []
        - Branch String:   'settings.c:3138,7'
          Branch Sides:
            - BranchSide:      'settings.c:3139,4'
              BranchSideFuncs:
                - settings_override_free
                - array_delete_i.2995
            - BranchSide:      'settings.c:3141,26'
              BranchSideFuncs:
                - settings_override_free
                - array_delete_i.2995
      Callsites:
        - Src:             'settings.c:3132,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:3137,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'settings.c:3138,8'
          Dst:             settings_override_equals
        - Src:             'settings.c:3141,3'
          Dst:             settings_override_free
        - Src:             'settings.c:3142,3'
          Dst:             array_delete_i
    - functionName:    settings_root_override
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3096
      functionLinenumberEnd: 3103
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - root
        - key
        - value
        - type
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
        - settings_override_fill
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3097,6'
          Branch Sides:
            - BranchSide:      'settings.c:3097,6'
              BranchSideFuncs:
                - array_append_space_i.2904
                - settings_override_fill
            - BranchSide:      'settings.c:3098,3'
              BranchSideFuncs:
                - array_create_i.2938
                - array_append_space_i.2904
                - settings_override_fill
      Callsites:
        - Src:             'settings.c:3097,7'
          Dst:             array_is_created_i
        - Src:             'settings.c:3098,3'
          Dst:             array_create_i
        - Src:             'settings.c:3100,3'
          Dst:             array_append_space_i
        - Src:             'settings.c:3102,2'
          Dst:             settings_override_fill
    - functionName:    settings_get_or_fatal
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3049
      functionLinenumberEnd: 3056
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - info
        - source_filename
        - source_linenum
      BBCount:         5
      ICount:          45
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_fatal
        - settings_get
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3053,6'
          Branch Sides:
            - BranchSide:      'settings.c:3055,17'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'settings.c:3056,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:3053,6'
          Dst:             settings_get
        - Src:             'settings.c:3055,3'
          Dst:             i_fatal
    - functionName:    settings_get
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 2966
      functionLinenumberEnd: 2974
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - info
        - flags
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         7
      ICount:          73
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - settings_get_full
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings.c:2973,2'
          Branch Sides:
            - BranchSide:      'settings.c:2973,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2973,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:2970,12'
          Dst:             settings_get_full
        - Src:             'settings.c:2973,2'
          Dst:             i_panic
    - functionName:    settings_get_full
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2903
      functionLinenumberEnd: 2957
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - filter_key
        - filter_value
        - info
        - params
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         40
      ICount:          266
      EdgeCount:       48
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - pool_unref
        - settings_get_real
        - settings_sort_filter_array
        - t_pop_pass_str
        - t_push
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings.c:2912,4'
          Branch Sides:
            - BranchSide:      'settings.c:2912,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2912,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2912,4'
          Branch Sides:
            - BranchSide:      'settings.c:2912,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2912,4'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2913,6'
          Branch Sides:
            - BranchSide:      'settings.c:2914,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2915,7'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2915,6'
          Branch Sides:
            - BranchSide:      'settings.c:2917,12'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:2924,13'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2924,2'
          Branch Sides:
            - BranchSide:      'settings.c:2927,7'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2955,11'
              BranchSideFuncs: []
        - Branch String:   'settings.c:2927,7'
          Branch Sides:
            - BranchSide:      'settings.c:2929,4'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2931,7'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2931,7'
          Branch Sides:
            - BranchSide:      'settings.c:2933,4'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
            - BranchSide:      'settings.c:2937,4'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
        - Branch String:   'settings.c:2938,3'
          Branch Sides:
            - BranchSide:      'settings.c:2938,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2941,3'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - i_panic
                - pool_unref.2935
                - i_panic
        - Branch String:   'settings.c:2946,5'
          Branch Sides:
            - BranchSide:      'settings.c:2946,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - settings_sort_filter_array
                - i_panic
                - pool_unref.2935
                - i_panic
            - BranchSide:      'settings.c:2946,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - settings_sort_filter_array
                - i_panic
                - pool_unref.2935
                - i_panic
        - Branch String:   'settings.c:2946,5'
          Branch Sides:
            - BranchSide:      'settings.c:2946,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2946,5'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - i_panic
                - i_panic
                - pool_unref.2935
        - Branch String:   'settings.c:2947,7'
          Branch Sides:
            - BranchSide:      'settings.c:2948,21'
              BranchSideFuncs:
                - pool_unref.2935
            - BranchSide:      'settings.c:2953,2'
              BranchSideFuncs:
                - t_push
                - settings_sort_filter_array
                - t_pop_pass_str
                - pool_unref.2935
                - i_panic
                - i_panic
      Callsites:
        - Src:             'settings.c:2908,2'
          Dst:             t_push
        - Src:             'settings.c:2909,9'
          Dst:             settings_get_real
        - Src:             'settings.c:2912,4'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:2912,4'
          Dst:             i_panic
        - Src:             'settings.c:2938,3'
          Dst:             i_panic
        - Src:             'settings.c:2941,3'
          Dst:             t_push
        - Src:             'settings.c:2942,10'
          Dst:             settings_sort_filter_array
        - Src:             'settings.c:2946,5'
          Dst:             t_pop_pass_str
        - Src:             'settings.c:2946,5'
          Dst:             i_panic
        - Src:             'settings.c:2950,4'
          Dst:             pool_unref
    - functionName:    settings_try_get_filter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3031
      functionLinenumberEnd: 3040
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - filter_key
        - filter_value
        - info
        - flags
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         11
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - settings_get_full
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3032,2'
          Branch Sides:
            - BranchSide:      'settings.c:3032,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:3033,2'
              BranchSideFuncs:
                - settings_get_full
                - i_panic
        - Branch String:   'settings.c:3033,2'
          Branch Sides:
            - BranchSide:      'settings.c:3033,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:3033,2'
              BranchSideFuncs:
                - settings_get_full
      Callsites:
        - Src:             'settings.c:3032,2'
          Dst:             i_panic
        - Src:             'settings.c:3033,2'
          Dst:             i_panic
        - Src:             'settings.c:3038,9'
          Dst:             settings_get_full
    - functionName:    settings_get_filter
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 3000
      functionLinenumberEnd: 3021
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - filter_key
        - filter_value
        - info
        - flags
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         16
      ICount:          118
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - settings_get_full
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:3001,2'
          Branch Sides:
            - BranchSide:      'settings.c:3001,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:3002,2'
              BranchSideFuncs:
                - settings_get_full
                - t_strdup_printf
                - i_panic
        - Branch String:   'settings.c:3002,2'
          Branch Sides:
            - BranchSide:      'settings.c:3002,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:3004,35'
              BranchSideFuncs:
                - settings_get_full
                - t_strdup_printf
        - Branch String:   'settings.c:3010,6'
          Branch Sides:
            - BranchSide:      'settings.c:3011,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:3012,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings.c:3012,6'
          Branch Sides:
            - BranchSide:      'settings.c:3017,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:3020,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:3001,2'
          Dst:             i_panic
        - Src:             'settings.c:3002,2'
          Dst:             i_panic
        - Src:             'settings.c:3007,12'
          Dst:             settings_get_full
        - Src:             'settings.c:3014,14'
          Dst:             t_strdup_printf
    - functionName:    settings_get_params
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 2984
      functionLinenumberEnd: 2989
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - info
        - params
        - source_filename
        - source_linenum
        - set_r
        - error_r
      BBCount:         7
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - settings_get_full
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:2988,2'
          Branch Sides:
            - BranchSide:      'settings.c:2988,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2988,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:2985,12'
          Dst:             settings_get_full
        - Src:             'settings.c:2988,2'
          Dst:             i_panic
    - functionName:    settings_key_exists
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 2717
      functionLinenumberEnd: 2737
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
      BBCount:         23
      ICount:          131
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - event_get_parent
        - event_get_ptr
        - i_panic
        - settings_mmap_lookup_key
        - strlen
        - t_pop
        - t_push
        - t_strndup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:2722,24'
          Branch Sides:
            - BranchSide:      'settings.c:2722,27'
              BranchSideFuncs:
                - t_push
                - strlen
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
                - t_strndup
                - i_panic
                - event_get_ptr
                - event_get_parent
            - BranchSide:      'settings.c:2722,2'
              BranchSideFuncs:
                - t_push
                - strlen
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
                - t_strndup
                - i_panic
                - event_get_ptr
                - event_get_parent
        - Branch String:   'settings.c:2722,2'
          Branch Sides:
            - BranchSide:      'settings.c:2720,24'
              BranchSideFuncs:
                - event_get_ptr
                - event_get_parent
                - t_push
                - strlen
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
                - t_strndup
                - i_panic
            - BranchSide:      'settings.c:2723,6'
              BranchSideFuncs:
                - t_push
                - strlen
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
                - t_strndup
                - i_panic
        - Branch String:   'settings.c:2723,6'
          Branch Sides:
            - BranchSide:      'settings.c:2724,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2727,2'
              BranchSideFuncs:
                - t_push
                - strlen
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
                - t_strndup
        - Branch String:   'settings.c:2729,15'
          Branch Sides:
            - BranchSide:      'settings.c:2729,18'
              BranchSideFuncs:
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
                - t_strndup
            - BranchSide:      'settings.c:2734,34'
              BranchSideFuncs:
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
        - Branch String:   'settings.c:2729,7'
          Branch Sides:
            - BranchSide:      'settings.c:2730,20'
              BranchSideFuncs:
                - t_strndup
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
            - BranchSide:      'settings.c:2734,34'
              BranchSideFuncs:
                - settings_mmap_lookup_key
                - t_pop
                - i_panic
        - Branch String:   'settings.c:2736,4'
          Branch Sides:
            - BranchSide:      'settings.c:2736,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings.c:2736,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:2720,10'
          Dst:             event_get_ptr
        - Src:             'settings.c:2721,11'
          Dst:             event_get_parent
        - Src:             'settings.c:2724,3'
          Dst:             i_panic
        - Src:             'settings.c:2727,2'
          Dst:             t_push
        - Src:             'settings.c:2728,16'
          Dst:             strlen
        - Src:             'settings.c:2730,10'
          Dst:             t_strndup
        - Src:             'settings.c:2734,9'
          Dst:             settings_mmap_lookup_key
        - Src:             'settings.c:2736,4'
          Dst:             t_pop
        - Src:             'settings.c:2736,4'
          Dst:             i_panic
    - functionName:    settings_has_mmap
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1412
      functionLinenumberEnd: 1413
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - root
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_mmap_parse
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 778
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - mmap
        - service_name
        - flags
        - specific_protocols_r
        - error_r
      BBCount:         35
      ICount:          263
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_idx_i
        - i_memcpy
        - memchr
        - memcmp
        - pool_datastack_create
        - settings_block_read
        - settings_read_all_keys
        - settings_read_config_paths
        - settings_read_filters
        - strlen
        - t_strdup_printf
        - t_strdup_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings.c:726,35'
          Branch Sides:
            - BranchSide:      'settings.c:727,13'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:729,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:727,61'
          Branch Sides:
            - BranchSide:      'settings.c:728,6'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:729,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:726,6'
          Branch Sides:
            - BranchSide:      'settings.c:729,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:732,6'
              BranchSideFuncs:
                - i_memcpy.2906
                - settings_read_config_paths
                - settings_read_all_keys
                - settings_read_filters
                - settings_block_read
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
                - t_strdup_printf
                - t_strdup_until
                - t_strdup_printf
        - Branch String:   'settings.c:732,41'
          Branch Sides:
            - BranchSide:      'settings.c:733,6'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_printf
            - BranchSide:      'settings.c:736,19'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_printf
        - Branch String:   'settings.c:732,6'
          Branch Sides:
            - BranchSide:      'settings.c:736,19'
              BranchSideFuncs:
                - t_strdup_until
                - t_strdup_printf
            - BranchSide:      'settings.c:741,28'
              BranchSideFuncs:
                - i_memcpy.2906
                - settings_read_config_paths
                - settings_read_all_keys
                - settings_read_filters
                - settings_block_read
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
                - t_strdup_printf
        - Branch String:   'settings.c:745,6'
          Branch Sides:
            - BranchSide:      'settings.c:749,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings.c:754,18'
              BranchSideFuncs:
                - settings_read_config_paths
                - settings_read_all_keys
                - settings_read_filters
                - settings_block_read
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
        - Branch String:   'settings.c:756,6'
          Branch Sides:
            - BranchSide:      'settings.c:757,10'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:758,29'
              BranchSideFuncs:
                - settings_read_all_keys
                - settings_read_filters
                - settings_block_read
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
        - Branch String:   'settings.c:758,6'
          Branch Sides:
            - BranchSide:      'settings.c:759,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:760,28'
              BranchSideFuncs:
                - settings_read_filters
                - settings_block_read
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
        - Branch String:   'settings.c:760,6'
          Branch Sides:
            - BranchSide:      'settings.c:762,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:764,2'
              BranchSideFuncs:
                - settings_block_read
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
        - Branch String:   'settings.c:765,7'
          Branch Sides:
            - BranchSide:      'settings.c:766,4'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:767,2'
              BranchSideFuncs:
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
                - settings_block_read
        - Branch String:   'settings.c:767,2'
          Branch Sides:
            - BranchSide:      'settings.c:765,27'
              BranchSideFuncs:
                - settings_block_read
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
            - BranchSide:      'settings.c:769,6'
              BranchSideFuncs:
                - array_count_i.2900
                - array_append_space_i.2904
                - array_idx_i.2924
        - Branch String:   'settings.c:769,6'
          Branch Sides:
            - BranchSide:      'settings.c:770,3'
              BranchSideFuncs:
                - array_append_space_i.2904
                - array_idx_i.2924
            - BranchSide:      'settings.c:773,4'
              BranchSideFuncs: []
        - Branch String:   'settings.c:775,6'
          Branch Sides:
            - BranchSide:      'settings.c:776,3'
              BranchSideFuncs: []
            - BranchSide:      'settings.c:777,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings.c:721,2'
          Dst:             pool_datastack_create
        - Src:             'settings.c:721,2'
          Dst:             array_create_i
        - Src:             'settings.c:724,40'
          Dst:             strlen
        - Src:             'settings.c:725,29'
          Dst:             memchr
        - Src:             'settings.c:727,6'
          Dst:             memcmp
        - Src:             'settings.c:736,4'
          Dst:             t_strdup_until
        - Src:             'settings.c:734,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:743,2'
          Dst:             i_memcpy
        - Src:             'settings.c:747,14'
          Dst:             t_strdup_printf
        - Src:             'settings.c:756,13'
          Dst:             settings_read_config_paths
        - Src:             'settings.c:758,6'
          Dst:             settings_read_all_keys
        - Src:             'settings.c:760,6'
          Dst:             settings_read_filters
        - Src:             'settings.c:765,7'
          Dst:             settings_block_read
        - Src:             'settings.c:769,6'
          Dst:             array_count_i
        - Src:             'settings.c:770,3'
          Dst:             array_append_space_i
        - Src:             'settings.c:771,27'
          Dst:             array_idx_i
    - functionName:    memchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      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:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_read
      functionSourceFile: '/src/dovecot/src/lib-settings/settings.c'
      linkageType:     externalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - root
        - fd
        - path
        - service_name
        - protocol_name
        - flags
        - specific_protocols_r
        - error_r
      BBCount:         15
      ICount:          153
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - hash_table_create
        - i_fatal
        - malloc_multiply_check
        - mmap_ro_file
        - p_malloc
        - p_strdup
        - pool_alloconly_create
        - settings_mmap_parse
        - settings_mmap_unref
        - str_hash
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings.c:1391,6'
          Branch Sides:
            - BranchSide:      'settings.c:1392,57'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'settings.c:1393,6'
              BranchSideFuncs:
                - p_strdup
                - settings_mmap_unref
                - hash_table_create
                - settings_mmap_parse
                - settings_mmap_unref
                - i_fatal
        - Branch String:   'settings.c:1393,6'
          Branch Sides:
            - BranchSide:      'settings.c:1394,59'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'settings.c:1396,33'
              BranchSideFuncs:
                - p_strdup
                - settings_mmap_unref
                - hash_table_create
                - settings_mmap_parse
                - settings_mmap_unref
        - Branch String:   'settings.c:1405,14'
          Branch Sides:
            - BranchSide:      'settings.c:1406,7'
              BranchSideFuncs:
                - settings_mmap_unref
            - BranchSide:      'settings.c:1407,24'
              BranchSideFuncs:
                - settings_mmap_unref
        - Branch String:   'settings.c:1406,16'
          Branch Sides:
            - BranchSide:      'settings.c:1406,20'
              BranchSideFuncs:
                - settings_mmap_unref
            - BranchSide:      'settings.c:1406,16'
              BranchSideFuncs: []
        - Branch String:   'settings.c:1405,6'
          Branch Sides:
            - BranchSide:      'settings.c:1405,6'
              BranchSideFuncs:
                - settings_mmap_unref
            - BranchSide:      'settings.c:1407,24'
              BranchSideFuncs:
                - settings_mmap_unref
      Callsites:
        - Src:             'settings.c:1386,16'
          Dst:             pool_alloconly_create
        - Src:             'settings.c:1387,31'
          Dst:             malloc_multiply_check
        - Src:             'settings.c:1387,31'
          Dst:             p_malloc
        - Src:             'settings.c:1390,20'
          Dst:             mmap_ro_file
        - Src:             'settings.c:1392,3'
          Dst:             i_fatal
        - Src:             'settings.c:1394,3'
          Dst:             i_fatal
        - Src:             'settings.c:1396,24'
          Dst:             p_strdup
        - Src:             'settings.c:1398,2'
          Dst:             settings_mmap_unref
        - Src:             'settings.c:1401,2'
          Dst:             hash_table_create
        - Src:             'settings.c:1401,2'
          Dst:             str_hash
        - Src:             'settings.c:1401,2'
          Dst:             strcmp
        - Src:             'settings.c:1403,12'
          Dst:             settings_mmap_parse
        - Src:             'settings.c:1407,3'
          Dst:             settings_mmap_unref
    - functionName:    setting_define_find
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - key
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:174,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:175,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings-parser.c:178,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:175,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:176,11'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:177,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'settings-parser.c:175,7'
          Dst:             strcmp
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_clear_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_set_used_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:191,2'
          Dst:             buffer_set_used_size
    - functionName:    array_insert_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - data
        - count
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:233,2'
          Dst:             buffer_insert
    - functionName:    settings_parse_boollist
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - array
        - key
        - value
      BBCount:         30
      ICount:          208
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_clear_i
        - array_create_i
        - array_delete_i
        - array_is_created_i
        - array_lsearch_i
        - get_bool
        - i_strcmp_p
        - p_strdup
        - settings_boollist_finish
        - settings_boollist_is_stopped
        - settings_parse_boollist_string
        - settings_parser_set_error
        - settings_section_unescape
        - strrchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:556,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:557,3'
              BranchSideFuncs:
                - settings_boollist_is_stopped
                - strrchr
                - settings_section_unescape
                - get_bool
                - array_lsearch_i
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
                - array_delete_i.3167
                - p_strdup
                - array_append_i.3166
                - array_clear_i.3160
                - settings_parse_boollist_string
                - settings_boollist_finish
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:561,36'
              BranchSideFuncs:
                - settings_boollist_is_stopped
                - strrchr
                - settings_section_unescape
                - get_bool
                - array_lsearch_i
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
                - array_delete_i.3167
                - p_strdup
                - array_append_i.3166
                - array_clear_i.3160
                - settings_parse_boollist_string
                - settings_boollist_finish
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:561,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:562,4'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:566,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:568,3'
              BranchSideFuncs:
                - array_clear_i.3160
                - settings_parse_boollist_string
                - settings_boollist_finish
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:578,34'
              BranchSideFuncs:
                - settings_section_unescape
                - get_bool
                - array_lsearch_i
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
                - array_delete_i.3167
                - p_strdup
                - array_append_i.3166
        - Branch String:   'settings-parser.c:569,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:571,30'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:575,28'
              BranchSideFuncs:
                - settings_boollist_finish
        - Branch String:   'settings-parser.c:581,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:582,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:584,9'
              BranchSideFuncs:
                - array_lsearch_i
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
                - array_delete_i.3167
                - p_strdup
                - array_append_i.3166
        - Branch String:   'settings-parser.c:585,19'
          Branch Sides:
            - BranchSide:      'settings-parser.c:585,22'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
                - array_delete_i.3167
                - p_strdup
                - array_append_i.3166
            - BranchSide:      'settings-parser.c:589,14'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
                - array_delete_i.3167
        - Branch String:   'settings-parser.c:585,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:587,18'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3166
                - settings_boollist_finish
            - BranchSide:      'settings-parser.c:589,14'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
                - array_delete_i.3167
        - Branch String:   'settings-parser.c:591,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:592,11'
              BranchSideFuncs:
                - array_delete_i.3167
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
            - BranchSide:      'settings-parser.c:595,19'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - settings_boollist_finish
        - Branch String:   'settings-parser.c:598,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:599,4'
              BranchSideFuncs:
                - array_append_space_i.3168
                - settings_boollist_finish
            - BranchSide:      'settings-parser.c:601,4'
              BranchSideFuncs:
                - array_append_space_i.3168
                - settings_boollist_finish
      Callsites:
        - Src:             'settings-parser.c:556,7'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:557,3'
          Dst:             array_create_i
        - Src:             'settings-parser.c:561,7'
          Dst:             settings_boollist_is_stopped
        - Src:             'settings-parser.c:565,8'
          Dst:             strrchr
        - Src:             'settings-parser.c:568,3'
          Dst:             array_clear_i
        - Src:             'settings-parser.c:569,7'
          Dst:             settings_parse_boollist_string
        - Src:             'settings-parser.c:571,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:575,3'
          Dst:             settings_boollist_finish
        - Src:             'settings-parser.c:578,8'
          Dst:             settings_section_unescape
        - Src:             'settings-parser.c:581,6'
          Dst:             get_bool
        - Src:             'settings-parser.c:584,9'
          Dst:             array_lsearch_i
        - Src:             'settings-parser.c:584,9'
          Dst:             i_strcmp_p
        - Src:             'settings-parser.c:587,9'
          Dst:             p_strdup
        - Src:             'settings-parser.c:588,3'
          Dst:             array_append_i
        - Src:             'settings-parser.c:593,4'
          Dst:             array_delete_i
        - Src:             'settings-parser.c:595,10'
          Dst:             p_strdup
        - Src:             'settings-parser.c:598,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:599,4'
          Dst:             array_create_i
        - Src:             'settings-parser.c:601,4'
          Dst:             array_append_space_i
        - Src:             'settings-parser.c:606,2'
          Dst:             settings_boollist_finish
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3159
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3159
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    settings_boollist_is_stopped
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         7
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - array_get_i
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:545,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:545,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:545,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:544,30'
          Dst:             array_get_i
        - Src:             'settings-parser.c:545,2'
          Dst:             i_panic
    - functionName:    settings_parse_boollist_string
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - value
        - pool
        - dest
        - error_r
      BBCount:         53
      ICount:          279
      EdgeCount:       67
      CyclomaticComplexity: 16
      functionsReached:
        - array_append_i
        - p_strdup
        - settings_section_unescape
        - str_append_c
        - str_c
        - str_len
        - str_truncate
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:402,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:403,11'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
            - BranchSide:      'settings-parser.c:455,6'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
        - Branch String:   'settings-parser.c:403,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:405,9'
              BranchSideFuncs:
                - str_len.3175
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:422,8'
              BranchSideFuncs:
                - str_len.3175
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:422,8'
              BranchSideFuncs:
                - str_len.3175
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:438,8'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
            - BranchSide:      'settings-parser.c:447,8'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:405,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:407,17'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
            - BranchSide:      'settings-parser.c:412,15'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:407,9'
          Branch Sides:
            - BranchSide:      'settings-parser.c:408,7'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:411,12'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:412,15'
          Branch Sides:
            - BranchSide:      'settings-parser.c:413,6'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:417,18'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:422,15'
          Branch Sides:
            - BranchSide:      'settings-parser.c:422,19'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_len.3175
            - BranchSide:      'settings-parser.c:428,8'
              BranchSideFuncs:
                - str_len.3175
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
        - Branch String:   'settings-parser.c:422,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:424,5'
              BranchSideFuncs:
                - str_len.3175
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
            - BranchSide:      'settings-parser.c:428,8'
              BranchSideFuncs:
                - str_len.3175
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
        - Branch String:   'settings-parser.c:428,15'
          Branch Sides:
            - BranchSide:      'settings-parser.c:428,26'
              BranchSideFuncs:
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_append_c.3170
                - str_len.3175
            - BranchSide:      'settings-parser.c:429,25'
              BranchSideFuncs:
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:428,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:429,25'
              BranchSideFuncs:
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_append_c.3170
                - str_len.3175
            - BranchSide:      'settings-parser.c:434,11'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:438,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:438,8'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
            - BranchSide:      'settings-parser.c:439,6'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:440,9'
          Branch Sides:
            - BranchSide:      'settings-parser.c:441,7'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:444,4'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:447,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:448,6'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:451,4'
              BranchSideFuncs:
                - str_append_c.3170
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
                - str_truncate.3178
                - str_append_c.3170
                - str_len.3175
        - Branch String:   'settings-parser.c:455,13'
          Branch Sides:
            - BranchSide:      'settings-parser.c:455,17'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
            - BranchSide:      'settings-parser.c:459,6'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
        - Branch String:   'settings-parser.c:455,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:456,4'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
            - BranchSide:      'settings-parser.c:459,6'
              BranchSideFuncs:
                - str_len.3175
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
        - Branch String:   'settings-parser.c:459,13'
          Branch Sides:
            - BranchSide:      'settings-parser.c:459,24'
              BranchSideFuncs:
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
            - BranchSide:      'settings-parser.c:460,23'
              BranchSideFuncs:
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
        - Branch String:   'settings-parser.c:459,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:460,23'
              BranchSideFuncs:
                - str_c
                - settings_section_unescape
                - p_strdup
                - array_append_i.3166
            - BranchSide:      'settings-parser.c:463,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:399,19'
          Dst:             t_str_new
        - Src:             'settings-parser.c:407,9'
          Dst:             str_len
        - Src:             'settings-parser.c:424,5'
          Dst:             str_append_c
        - Src:             'settings-parser.c:428,18'
          Dst:             str_len
        - Src:             'settings-parser.c:430,32'
          Dst:             str_c
        - Src:             'settings-parser.c:430,6'
          Dst:             settings_section_unescape
        - Src:             'settings-parser.c:429,16'
          Dst:             p_strdup
        - Src:             'settings-parser.c:431,5'
          Dst:             array_append_i
        - Src:             'settings-parser.c:432,5'
          Dst:             str_truncate
        - Src:             'settings-parser.c:451,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:459,16'
          Dst:             str_len
        - Src:             'settings-parser.c:460,55'
          Dst:             str_c
        - Src:             'settings-parser.c:460,29'
          Dst:             settings_section_unescape
        - Src:             'settings-parser.c:460,14'
          Dst:             p_strdup
        - Src:             'settings-parser.c:461,3'
          Dst:             array_append_i
    - functionName:    settings_parser_set_error
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - error
      BBCount:         5
      ICount:          35
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup
        - p_free_internal
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:160,2'
          Dst:             p_free_internal
        - Src:             'settings-parser.c:161,15'
          Dst:             i_strdup
    - functionName:    settings_boollist_finish
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 537
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - array
        - stop
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_count_i
        - array_delete_i
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings-parser.c:528,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:529,3'
              BranchSideFuncs:
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - array_count_i.3172
                - array_delete_i.3167
            - BranchSide:      'settings-parser.c:534,6'
              BranchSideFuncs:
                - array_count_i.3172
                - array_delete_i.3167
                - array_count_i.3172
                - array_delete_i.3167
        - Branch String:   'settings-parser.c:534,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:534,6'
              BranchSideFuncs:
                - array_count_i.3172
                - array_delete_i.3167
                - array_count_i.3172
                - array_delete_i.3167
            - BranchSide:      'settings-parser.c:535,3'
              BranchSideFuncs:
                - array_count_i.3172
                - array_delete_i.3167
                - array_count_i.3172
                - array_delete_i.3167
      Callsites:
        - Src:             'settings-parser.c:527,2'
          Dst:             array_append_space_i
        - Src:             'settings-parser.c:529,3'
          Dst:             array_append_i
        - Src:             'settings-parser.c:535,3'
          Dst:             array_count_i
        - Src:             'settings-parser.c:535,3'
          Dst:             array_delete_i
        - Src:             'settings-parser.c:536,2'
          Dst:             array_count_i
        - Src:             'settings-parser.c:536,2'
          Dst:             array_delete_i
    - functionName:    settings_section_unescape
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1198
      functionLinenumberEnd: 1242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         19
      ICount:          144
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - str_append
        - str_append_c
        - str_append_data
        - str_c
        - strchr
        - strlen
        - t_str_new
      functionUses:    7
      BranchProfiles:
        - Branch String:   'settings-parser.c:1200,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1201,10'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1203,35'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - strchr
                - str_append_data.3169
                - str_append.3171
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1205,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1206,11'
              BranchSideFuncs:
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append.3171
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1240,2'
              BranchSideFuncs:
                - str_append_c.3170
                - str_c
        - Branch String:   'settings-parser.c:1206,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1208,4'
              BranchSideFuncs:
                - str_append_c.3170
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append.3171
                - str_c
            - BranchSide:      'settings-parser.c:1211,4'
              BranchSideFuncs:
                - str_append_c.3170
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append.3171
                - str_c
            - BranchSide:      'settings-parser.c:1214,4'
              BranchSideFuncs:
                - str_append_c.3170
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append.3171
                - str_c
            - BranchSide:      'settings-parser.c:1217,4'
              BranchSideFuncs:
                - str_append_c.3170
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append.3171
                - str_c
            - BranchSide:      'settings-parser.c:1220,4'
              BranchSideFuncs:
                - str_append_c.3170
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append.3171
                - str_c
            - BranchSide:      'settings-parser.c:1224,4'
              BranchSideFuncs:
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append.3171
                - str_c
            - BranchSide:      'settings-parser.c:1227,4'
              BranchSideFuncs:
                - str_append_c.3170
                - str_append_c.3170
                - strchr
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append.3171
                - str_c
        - Branch String:   'settings-parser.c:1233,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1234,15'
              BranchSideFuncs:
                - str_append.3171
                - str_c
            - BranchSide:      'settings-parser.c:1237,19'
              BranchSideFuncs:
                - str_append_data.3169
                - str_append_c.3170
                - str_c
                - strchr
                - str_append.3171
                - str_c
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
                - str_append_c.3170
      Callsites:
        - Src:             'settings-parser.c:1199,18'
          Dst:             strchr
        - Src:             'settings-parser.c:1203,28'
          Dst:             strlen
        - Src:             'settings-parser.c:1203,18'
          Dst:             t_str_new
        - Src:             'settings-parser.c:1204,2'
          Dst:             str_append_data
        - Src:             'settings-parser.c:1208,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1211,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1214,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1217,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1220,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1227,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1228,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1232,7'
          Dst:             strchr
        - Src:             'settings-parser.c:1234,4'
          Dst:             str_append
        - Src:             'settings-parser.c:1235,11'
          Dst:             str_c
        - Src:             'settings-parser.c:1237,3'
          Dst:             str_append_data
        - Src:             'settings-parser.c:1240,2'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1241,9'
          Dst:             str_c
    - functionName:    get_bool
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - value
        - result_r
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - settings_parser_set_error
        - str_parse_get_bool
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:186,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:186,6'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:187,29'
              BranchSideFuncs:
                - settings_parser_set_error
      Callsites:
        - Src:             'settings-parser.c:186,13'
          Dst:             str_parse_get_bool
        - Src:             'settings-parser.c:187,3'
          Dst:             settings_parser_set_error
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:244,2'
          Dst:             buffer_delete
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:253,13'
          Dst:             array_count_i
    - functionName:    settings_parse_strlist
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - array
        - key
        - value
        - error_r
      BBCount:         25
      ICount:          182
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - array_append_i
        - array_clear_i
        - array_create_i
        - array_get_i
        - array_idx_set_i
        - array_is_created_i
        - p_strdup
        - settings_section_unescape
        - strchr
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:355,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:356,11'
              BranchSideFuncs:
                - array_get_i.3181
                - strchr
                - settings_section_unescape
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_get_i.3181
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - strcmp
                - array_idx_set_i
                - t_strdup_printf
                - array_is_created_i.3162
                - array_clear_i.3160
            - BranchSide:      'settings-parser.c:361,30'
              BranchSideFuncs:
                - strchr
                - settings_section_unescape
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_get_i.3181
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - strcmp
                - array_idx_set_i
                - t_strdup_printf
                - array_is_created_i.3162
                - array_clear_i.3160
        - Branch String:   'settings-parser.c:357,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:358,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:359,2'
              BranchSideFuncs:
                - strchr
                - settings_section_unescape
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_get_i.3181
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - strcmp
                - array_idx_set_i
                - t_strdup_printf
                - array_is_created_i.3162
                - array_clear_i.3160
        - Branch String:   'settings-parser.c:362,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:363,7'
              BranchSideFuncs:
                - t_strdup_printf
                - array_is_created_i.3162
                - array_clear_i.3160
            - BranchSide:      'settings-parser.c:374,34'
              BranchSideFuncs:
                - settings_section_unescape
                - p_strdup
                - array_is_created_i.3162
                - array_create_i.3163
                - array_get_i.3181
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - strcmp
                - array_idx_set_i
        - Branch String:   'settings-parser.c:363,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:365,8'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_clear_i.3160
            - BranchSide:      'settings-parser.c:371,51'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'settings-parser.c:365,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:366,5'
              BranchSideFuncs:
                - array_clear_i.3160
            - BranchSide:      'settings-parser.c:367,4'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:377,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:378,3'
              BranchSideFuncs:
                - array_get_i.3181
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - strcmp
                - array_idx_set_i
            - BranchSide:      'settings-parser.c:381,10'
              BranchSideFuncs:
                - array_get_i.3181
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - strcmp
                - array_idx_set_i
        - Branch String:   'settings-parser.c:382,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:383,14'
              BranchSideFuncs:
                - strcmp
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - array_idx_set_i
            - BranchSide:      'settings-parser.c:389,18'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
        - Branch String:   'settings-parser.c:383,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:384,4'
              BranchSideFuncs:
                - array_idx_set_i
            - BranchSide:      'settings-parser.c:387,2'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.3166
                - array_append_i.3166
                - strcmp
                - array_idx_set_i
      Callsites:
        - Src:             'settings-parser.c:355,6'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:356,11'
          Dst:             array_get_i
        - Src:             'settings-parser.c:361,23'
          Dst:             strchr
        - Src:             'settings-parser.c:365,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:366,5'
          Dst:             array_clear_i
        - Src:             'settings-parser.c:370,14'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:374,8'
          Dst:             settings_section_unescape
        - Src:             'settings-parser.c:375,11'
          Dst:             p_strdup
        - Src:             'settings-parser.c:377,7'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:378,3'
          Dst:             array_create_i
        - Src:             'settings-parser.c:381,10'
          Dst:             array_get_i
        - Src:             'settings-parser.c:383,7'
          Dst:             strcmp
        - Src:             'settings-parser.c:384,4'
          Dst:             array_idx_set_i
        - Src:             'settings-parser.c:389,9'
          Dst:             p_strdup
        - Src:             'settings-parser.c:390,2'
          Dst:             array_append_i
        - Src:             'settings-parser.c:391,2'
          Dst:             array_append_i
    - functionName:    get_enum
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - value
        - result_r
        - allowed_values
      BBCount:         17
      ICount:          108
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - p_strdup
        - settings_parser_set_error
        - strchr
        - strcmp
        - strncmp
        - t_strconcat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:244,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:245,14'
              BranchSideFuncs:
                - strchr
                - strncmp
                - p_strdup
                - strcmp
                - t_strconcat
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:262,23'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'settings-parser.c:246,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:247,15'
              BranchSideFuncs:
                - strcmp
                - t_strconcat
                - settings_parser_set_error
                - p_strdup
            - BranchSide:      'settings-parser.c:255,15'
              BranchSideFuncs:
                - strncmp
                - p_strdup
                - strchr
                - strcmp
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:247,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:248,5'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:250,30'
              BranchSideFuncs:
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:255,63'
          Branch Sides:
            - BranchSide:      'settings-parser.c:256,7'
              BranchSideFuncs:
                - p_strdup
                - strchr
                - strncmp
                - strcmp
                - t_strconcat
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:259,20'
              BranchSideFuncs:
                - p_strdup
                - strchr
                - strncmp
                - strcmp
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:255,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:257,4'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:259,20'
              BranchSideFuncs:
                - p_strdup
                - strchr
                - strncmp
                - strcmp
                - t_strconcat
                - settings_parser_set_error
      Callsites:
        - Src:             'settings-parser.c:245,7'
          Dst:             strchr
        - Src:             'settings-parser.c:247,8'
          Dst:             strcmp
        - Src:             'settings-parser.c:251,5'
          Dst:             t_strconcat
        - Src:             'settings-parser.c:250,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:255,7'
          Dst:             strncmp
        - Src:             'settings-parser.c:262,14'
          Dst:             p_strdup
    - functionName:    get_file
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - dup_value
        - value
      BBCount:         13
      ICount:          92
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - p_strdup
        - settings_parse_read_file
        - settings_parser_set_error
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:269,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:270,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:271,32'
              BranchSideFuncs:
                - strchr
                - settings_parse_read_file
                - settings_parser_set_error
                - p_strdup
        - Branch String:   'settings-parser.c:272,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:273,7'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:279,32'
              BranchSideFuncs:
                - settings_parse_read_file
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:273,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:274,22'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:275,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:279,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:281,29'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:284,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:271,24'
          Dst:             strchr
        - Src:             'settings-parser.c:274,13'
          Dst:             p_strdup
        - Src:             'settings-parser.c:279,6'
          Dst:             settings_parse_read_file
        - Src:             'settings-parser.c:281,3'
          Dst:             settings_parser_set_error
    - functionName:    settings_parse_read_file
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - value_path
        - pool
        - st_r
        - output_r
        - error_r
      BBCount:         17
      ICount:          163
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - fstat
        - i_close_fd_path
        - i_memcpy
        - memchr
        - open
        - p_malloc
        - read_full
        - strlen
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:306,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:307,53'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings-parser.c:310,12'
              BranchSideFuncs:
                - fstat
                - strlen
                - p_malloc.3192
                - i_memcpy.3193
                - read_full
                - i_close_fd_path
                - memchr
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
                - i_close_fd_path
        - Branch String:   'settings-parser.c:310,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:311,54'
              BranchSideFuncs:
                - t_strdup_printf
                - i_close_fd_path
            - BranchSide:      'settings-parser.c:315,33'
              BranchSideFuncs:
                - strlen
                - p_malloc.3192
                - i_memcpy.3193
                - read_full
                - i_close_fd_path
                - memchr
                - t_strdup_printf
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings-parser.c:322,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:323,53'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings-parser.c:326,6'
              BranchSideFuncs:
                - memchr
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'settings-parser.c:326,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:328,39'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings-parser.c:331,13'
              BranchSideFuncs:
                - memchr
                - t_strdup_printf
        - Branch String:   'settings-parser.c:331,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:334,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'settings-parser.c:338,6'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:338,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:339,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:340,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:306,12'
          Dst:             open
        - Src:             'settings-parser.c:307,14'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:310,6'
          Dst:             fstat
        - Src:             'settings-parser.c:311,14'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:312,3'
          Dst:             i_close_fd_path
        - Src:             'settings-parser.c:315,26'
          Dst:             strlen
        - Src:             'settings-parser.c:316,14'
          Dst:             p_malloc
        - Src:             'settings-parser.c:317,2'
          Dst:             i_memcpy
        - Src:             'settings-parser.c:320,12'
          Dst:             read_full
        - Src:             'settings-parser.c:321,2'
          Dst:             i_close_fd_path
        - Src:             'settings-parser.c:323,14'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:327,14'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:331,6'
          Dst:             memchr
        - Src:             'settings-parser.c:332,14'
          Dst:             t_strdup_printf
    - functionName:    open
      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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    7
      BranchProfiles:
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:75,2'
          Dst:             i_panic
    - functionName:    get_in_port_zero
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - value
        - result_r
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - net_str2port_zero
        - settings_parser_set_error
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:291,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:292,29'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:296,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:291,6'
          Dst:             net_str2port_zero
        - Src:             'settings-parser.c:292,34'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:292,3'
          Dst:             settings_parser_set_error
    - functionName:    settings_value_is_unlimited
      functionSourceFile: '/src/dovecot/src/lib-settings/./settings-parser.h'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - value
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:
        - Branch String:   './settings-parser.h:329,49'
          Branch Sides:
            - BranchSide:      './settings-parser.h:329,49'
              BranchSideFuncs: []
            - BranchSide:      './settings-parser.h:330,10'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             './settings-parser.h:329,9'
          Dst:             strcmp
        - Src:             './settings-parser.h:330,3'
          Dst:             strcmp
    - functionName:    get_octal
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - value
        - result_r
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_uint
        - settings_parser_set_error
        - str_to_ullong_oct
        - t_strconcat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:227,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:228,19'
              BranchSideFuncs:
                - get_uint
            - BranchSide:      'settings-parser.c:230,24'
              BranchSideFuncs:
                - str_to_ullong_oct
                - t_strconcat
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:230,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:231,29'
              BranchSideFuncs:
                - t_strconcat
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:235,28'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:228,10'
          Dst:             get_uint
        - Src:             'settings-parser.c:230,6'
          Dst:             str_to_ullong_oct
        - Src:             'settings-parser.c:232,4'
          Dst:             t_strconcat
        - Src:             'settings-parser.c:231,3'
          Dst:             settings_parser_set_error
    - functionName:    get_uint
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - value
        - result_r
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - settings_parser_set_error
        - settings_value_is_unlimited
        - str_num_error
        - str_to_uint
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:208,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:209,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:212,18'
              BranchSideFuncs:
                - str_to_uint
                - str_num_error
                - t_strdup_printf
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:212,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:213,29'
              BranchSideFuncs:
                - str_num_error
                - t_strdup_printf
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:218,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:208,6'
          Dst:             settings_value_is_unlimited
        - Src:             'settings-parser.c:212,6'
          Dst:             str_to_uint
        - Src:             'settings-parser.c:215,4'
          Dst:             str_num_error
        - Src:             'settings-parser.c:213,34'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:213,3'
          Dst:             settings_parser_set_error
    - functionName:    get_uintmax
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - value
        - result_r
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - settings_parser_set_error
        - str_num_error
        - str_to_uintmax
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:195,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:196,29'
              BranchSideFuncs:
                - str_num_error
                - t_strdup_printf
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:201,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:195,6'
          Dst:             str_to_uintmax
        - Src:             'settings-parser.c:198,4'
          Dst:             str_num_error
        - Src:             'settings-parser.c:196,34'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:196,3'
          Dst:             settings_parser_set_error
    - functionName:    settings_get_config_binary
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1252
      functionLinenumberEnd: 1253
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_set_config_binary
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1249
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - binary
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_section_escape
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1154
      functionLinenumberEnd: 1195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         35
      ICount:          224
      EdgeCount:       43
      CyclomaticComplexity: 10
      functionsReached:
        - str_append
        - str_append_c
        - str_append_data
        - str_c
        - strlen
        - t_str_new
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings-parser.c:1160,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1161,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1164,6'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1161,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1161,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1162,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1161,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1161,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1162,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1161,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1161,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1162,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1161,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1161,7'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1162,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1161,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1162,4'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1163,2'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1164,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1165,7'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1170,18'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.3169
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
        - Branch String:   'settings-parser.c:1165,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1166,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1167,10'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:1172,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1173,11'
              BranchSideFuncs:
                - str_append.3171
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1194,15'
              BranchSideFuncs:
                - str_c
        - Branch String:   'settings-parser.c:1173,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1175,15'
              BranchSideFuncs:
                - str_append.3171
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1178,15'
              BranchSideFuncs:
                - str_append.3171
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1181,15'
              BranchSideFuncs:
                - str_append.3171
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1184,15'
              BranchSideFuncs:
                - str_append.3171
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1187,15'
              BranchSideFuncs:
                - str_append.3171
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append_c.3170
            - BranchSide:      'settings-parser.c:1190,4'
              BranchSideFuncs:
                - str_append_c.3170
                - str_c
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
                - str_append.3171
      Callsites:
        - Src:             'settings-parser.c:1170,22'
          Dst:             strlen
        - Src:             'settings-parser.c:1170,8'
          Dst:             t_str_new
        - Src:             'settings-parser.c:1171,2'
          Dst:             str_append_data
        - Src:             'settings-parser.c:1175,4'
          Dst:             str_append
        - Src:             'settings-parser.c:1178,4'
          Dst:             str_append
        - Src:             'settings-parser.c:1181,4'
          Dst:             str_append
        - Src:             'settings-parser.c:1184,4'
          Dst:             str_append
        - Src:             'settings-parser.c:1187,4'
          Dst:             str_append
        - Src:             'settings-parser.c:1190,4'
          Dst:             str_append_c
        - Src:             'settings-parser.c:1194,9'
          Dst:             str_c
    - functionName:    settings_defaults_dup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - info
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_memcpy
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:1147,14'
          Dst:             p_malloc
        - Src:             'settings-parser.c:1148,2'
          Dst:             i_memcpy
        - Src:             'settings-parser.c:1149,2'
          Dst:             i_memcpy
    - functionName:    settings_equal
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1143
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - set1
        - set2
        - except_fields
      BBCount:         71
      ICount:          464
      EdgeCount:       88
      CyclomaticComplexity: 19
      functionsReached:
        - array_get_i
        - array_is_created_i
        - str_array_find
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:1064,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1065,7'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1142,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:1065,29'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1066,22'
              BranchSideFuncs:
                - str_array_find
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
            - BranchSide:      'settings-parser.c:1069,20'
              BranchSideFuncs:
                - str_array_find
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
        - Branch String:   'settings-parser.c:1065,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1067,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1069,20'
              BranchSideFuncs:
                - str_array_find
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
        - Branch String:   'settings-parser.c:1071,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1073,21'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1079,26'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1088,29'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1088,29'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1088,29'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1088,29'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1094,23'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1100,29'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1109,30'
              BranchSideFuncs:
                - strcmp
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1109,30'
              BranchSideFuncs:
                - strcmp
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1109,30'
              BranchSideFuncs:
                - strcmp
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1109,30'
              BranchSideFuncs:
                - strcmp
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1117,44'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - strcmp
                - str_array_find
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
            - BranchSide:      'settings-parser.c:1117,44'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - strcmp
                - str_array_find
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
            - BranchSide:      'settings-parser.c:1117,44'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - strcmp
                - str_array_find
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
            - BranchSide:      'settings-parser.c:1139,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1139,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1141,2'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1074,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1075,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1076,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1080,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1081,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1082,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1089,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1090,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1091,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1095,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1096,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1097,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1101,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1102,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1103,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1110,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1111,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1112,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1118,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1118,8'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - array_is_created_i.3162
                - array_is_created_i.3162
                - strcmp
                - str_array_find
                - strcmp
            - BranchSide:      'settings-parser.c:1119,10'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1118,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1119,10'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1123,8'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - array_is_created_i.3162
                - array_is_created_i.3162
                - strcmp
                - str_array_find
                - strcmp
        - Branch String:   'settings-parser.c:1119,10'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1119,10'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1121,5'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1119,9'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1120,6'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1121,5'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1123,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1123,8'
              BranchSideFuncs:
                - array_get_i.3181
                - array_get_i.3181
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - strcmp
                - str_array_find
                - strcmp
            - BranchSide:      'settings-parser.c:1124,5'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:1123,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1124,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1127,30'
              BranchSideFuncs:
                - array_get_i.3181
                - array_get_i.3181
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - strcmp
                - str_array_find
                - strcmp
        - Branch String:   'settings-parser.c:1129,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1130,5'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1131,11'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - str_array_find
                - strcmp
        - Branch String:   'settings-parser.c:1131,4'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1132,16'
              BranchSideFuncs:
                - strcmp
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - str_array_find
            - BranchSide:      'settings-parser.c:1135,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - strcmp
                - str_array_find
        - Branch String:   'settings-parser.c:1132,9'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1133,6'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:1134,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - array_get_i.3181
                - strcmp
                - str_array_find
                - strcmp
      Callsites:
        - Src:             'settings-parser.c:1066,7'
          Dst:             str_array_find
        - Src:             'settings-parser.c:1110,8'
          Dst:             strcmp
        - Src:             'settings-parser.c:1118,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:1119,10'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:1123,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:1127,30'
          Dst:             array_get_i
        - Src:             'settings-parser.c:1128,30'
          Dst:             array_get_i
        - Src:             'settings-parser.c:1132,9'
          Dst:             strcmp
    - functionName:    settings_hash
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 1057
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - set
        - except_fields
      BBCount:         50
      ICount:          340
      EdgeCount:       56
      CyclomaticComplexity: 8
      functionsReached:
        - array_is_created_i
        - crc32_data_more
        - crc32_str_more
        - i_memcpy
        - i_panic
        - str_array_find
        - strchr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:985,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:986,7'
              BranchSideFuncs:
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1057,9'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:986,29'
          Branch Sides:
            - BranchSide:      'settings-parser.c:987,22'
              BranchSideFuncs:
                - str_array_find
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
            - BranchSide:      'settings-parser.c:990,19'
              BranchSideFuncs:
                - str_array_find
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
        - Branch String:   'settings-parser.c:986,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:988,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:990,19'
              BranchSideFuncs:
                - str_array_find
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
        - Branch String:   'settings-parser.c:991,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:993,20'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:998,25'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1006,28'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1006,28'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1006,28'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1006,28'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1011,22'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1016,28'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1023,29'
              BranchSideFuncs:
                - crc32_str_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1023,29'
              BranchSideFuncs:
                - crc32_str_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1023,29'
              BranchSideFuncs:
                - crc32_str_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1028,29'
              BranchSideFuncs:
                - strchr
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
                - i_panic
            - BranchSide:      'settings-parser.c:1044,43'
              BranchSideFuncs:
                - array_is_created_i.3162
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
                - i_memcpy.3193
            - BranchSide:      'settings-parser.c:1044,43'
              BranchSideFuncs:
                - array_is_created_i.3162
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
                - i_memcpy.3193
            - BranchSide:      'settings-parser.c:1044,43'
              BranchSideFuncs:
                - array_is_created_i.3162
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
                - i_memcpy.3193
            - BranchSide:      'settings-parser.c:1054,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1054,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1056,2'
              BranchSideFuncs:
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
        - Branch String:   'settings-parser.c:1030,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1031,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:1032,8'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
        - Branch String:   'settings-parser.c:1032,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1034,26'
              BranchSideFuncs:
                - crc32_str_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
            - BranchSide:      'settings-parser.c:1037,27'
              BranchSideFuncs:
                - crc32_data_more
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
        - Branch String:   'settings-parser.c:1045,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1047,5'
              BranchSideFuncs:
                - array_is_created_i.3162
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
                - i_memcpy.3193
            - BranchSide:      'settings-parser.c:1050,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
        - Branch String:   'settings-parser.c:1047,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1047,5'
              BranchSideFuncs:
                - i_memcpy.3193
                - array_is_created_i.3162
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
            - BranchSide:      'settings-parser.c:1047,5'
              BranchSideFuncs:
                - array_is_created_i.3162
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - crc32_str_more
        - Branch String:   'settings-parser.c:1047,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:1048,27'
              BranchSideFuncs:
                - crc32_str_more
                - array_is_created_i.3162
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
                - i_memcpy.3193
            - BranchSide:      'settings-parser.c:1049,4'
              BranchSideFuncs:
                - array_is_created_i.3162
                - crc32_str_more
                - i_memcpy.3193
                - strchr
                - crc32_data_more
                - crc32_str_more
                - i_panic
                - crc32_str_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - crc32_data_more
                - str_array_find
      Callsites:
        - Src:             'settings-parser.c:987,7'
          Dst:             str_array_find
        - Src:             'settings-parser.c:994,10'
          Dst:             crc32_data_more
        - Src:             'settings-parser.c:999,10'
          Dst:             crc32_data_more
        - Src:             'settings-parser.c:1007,10'
          Dst:             crc32_data_more
        - Src:             'settings-parser.c:1012,10'
          Dst:             crc32_data_more
        - Src:             'settings-parser.c:1017,10'
          Dst:             crc32_data_more
        - Src:             'settings-parser.c:1024,10'
          Dst:             crc32_str_more
        - Src:             'settings-parser.c:1029,21'
          Dst:             strchr
        - Src:             'settings-parser.c:1031,5'
          Dst:             i_panic
        - Src:             'settings-parser.c:1034,11'
          Dst:             crc32_str_more
        - Src:             'settings-parser.c:1037,11'
          Dst:             crc32_data_more
        - Src:             'settings-parser.c:1045,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:1047,5'
          Dst:             i_memcpy
        - Src:             'settings-parser.c:1048,12'
          Dst:             crc32_str_more
    - functionName:    settings_parser_check
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 975
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - pool
        - event
        - error_r
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_check
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:976,9'
          Dst:             settings_check
    - functionName:    settings_check
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 971
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - info
        - pool
        - set
        - error_r
      BBCount:         32
      ICount:          165
      EdgeCount:       38
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - t_pop_pass_str
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:956,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:957,3'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - t_push
                - t_pop_pass_str
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:963,6'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:959,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:959,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - t_pop_pass_str
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:959,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_push
                - t_pop_pass_str
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:959,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:959,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:959,5'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:960,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:961,4'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings-parser.c:962,2'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:963,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:964,3'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings-parser.c:970,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:966,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:966,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'settings-parser.c:966,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
        - Branch String:   'settings-parser.c:966,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:966,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:966,5'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:967,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:968,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:969,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:957,3'
          Dst:             t_push
        - Src:             'settings-parser.c:959,5'
          Dst:             t_pop_pass_str
        - Src:             'settings-parser.c:959,5'
          Dst:             i_panic
        - Src:             'settings-parser.c:964,3'
          Dst:             t_push
        - Src:             'settings-parser.c:966,5'
          Dst:             t_pop_pass_str
        - Src:             'settings-parser.c:966,5'
          Dst:             i_panic
    - functionName:    settings_find_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - allow_filter_name
        - def_r
      BBCount:         22
      ICount:          130
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - setting_define_find
        - strrchr
        - t_strdup_until
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:791,18'
          Branch Sides:
            - BranchSide:      'settings-parser.c:791,22'
              BranchSideFuncs:
                - strrchr
                - t_strdup_until
                - setting_define_find
            - BranchSide:      'settings-parser.c:798,16'
              BranchSideFuncs:
                - strrchr
                - t_strdup_until
                - setting_define_find
        - Branch String:   'settings-parser.c:791,51'
          Branch Sides:
            - BranchSide:      'settings-parser.c:792,8'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:793,12'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:791,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:793,12'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:798,16'
              BranchSideFuncs:
                - strrchr
                - t_strdup_until
                - setting_define_find
        - Branch String:   'settings-parser.c:799,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:800,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:802,30'
              BranchSideFuncs:
                - t_strdup_until
                - setting_define_find
        - Branch String:   'settings-parser.c:804,18'
          Branch Sides:
            - BranchSide:      'settings-parser.c:804,22'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:809,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:804,47'
          Branch Sides:
            - BranchSide:      'settings-parser.c:805,8'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:806,12'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:804,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:806,12'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:809,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:790,8'
          Dst:             setting_define_find
        - Src:             'settings-parser.c:798,8'
          Dst:             strrchr
        - Src:             'settings-parser.c:802,15'
          Dst:             t_strdup_until
        - Src:             'settings-parser.c:803,8'
          Dst:             setting_define_find
    - functionName:    settings_parse_get_value
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - type_r
      BBCount:         20
      ICount:          127
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - settings_find_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:935,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:936,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:938,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:938,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:939,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:947,12'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:939,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:939,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:940,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:944,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:944,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'settings-parser.c:944,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'settings-parser.c:944,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:944,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:945,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
      Callsites:
        - Src:             'settings-parser.c:935,7'
          Dst:             settings_find_key
        - Src:             'settings-parser.c:939,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:944,3'
          Dst:             i_panic
    - functionName:    boollist_removal_cmp
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 885
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - r1
        - r2
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:882,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:883,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:884,16'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'settings-parser.c:884,9'
          Dst:             strcmp
    - functionName:    settings_parse_list_has_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 890
      functionLinenumberEnd: 927
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_idx
        - key_suffix
      BBCount:         20
      ICount:          156
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - array_get_i
        - array_is_created_i
        - array_lsearch_i
        - boollist_removal_cmp
        - i_unreached
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:894,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:896,8'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_get_i.3181
                - strcmp
            - BranchSide:      'settings-parser.c:899,8'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_is_created_i.3162
                - array_get_i.3181
                - strcmp
                - array_lsearch_i
            - BranchSide:      'settings-parser.c:912,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'settings-parser.c:900,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:901,4'
              BranchSideFuncs:
                - array_lsearch_i
                - array_is_created_i.3162
                - array_get_i.3181
                - strcmp
            - BranchSide:      'settings-parser.c:903,36'
              BranchSideFuncs:
                - array_lsearch_i
                - array_is_created_i.3162
                - array_get_i.3181
                - strcmp
        - Branch String:   'settings-parser.c:907,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:909,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:910,3'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_get_i.3181
                - strcmp
        - Branch String:   'settings-parser.c:917,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:918,3'
              BranchSideFuncs:
                - array_get_i.3181
                - strcmp
            - BranchSide:      'settings-parser.c:921,29'
              BranchSideFuncs:
                - array_get_i.3181
                - strcmp
        - Branch String:   'settings-parser.c:922,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:923,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'settings-parser.c:926,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:923,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:924,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:925,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'settings-parser.c:900,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:907,7'
          Dst:             array_lsearch_i
        - Src:             'settings-parser.c:907,7'
          Dst:             boollist_removal_cmp
        - Src:             'settings-parser.c:912,3'
          Dst:             i_unreached
        - Src:             'settings-parser.c:917,7'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:921,29'
          Dst:             array_get_i
        - Src:             'settings-parser.c:923,7'
          Dst:             strcmp
    - functionName:    settings_parse_array_stop
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 859
      functionLinenumberEnd: 877
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ctx
        - key_idx
      BBCount:         18
      ICount:          147
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_i
        - array_count_i
        - array_create_i
        - array_delete_i
        - array_is_created_i
        - i_panic
        - settings_boollist_finish
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:860,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:860,2'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - settings_boollist_finish
                - i_panic
            - BranchSide:      'settings-parser.c:860,2'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - settings_boollist_finish
                - i_panic
        - Branch String:   'settings-parser.c:860,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:860,2'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - settings_boollist_finish
                - i_panic
            - BranchSide:      'settings-parser.c:860,2'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - settings_boollist_finish
                - i_panic
        - Branch String:   'settings-parser.c:860,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:860,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:865,3'
              BranchSideFuncs:
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - settings_boollist_finish
        - Branch String:   'settings-parser.c:866,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:867,3'
              BranchSideFuncs:
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - settings_boollist_finish
            - BranchSide:      'settings-parser.c:869,6'
              BranchSideFuncs:
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
                - settings_boollist_finish
        - Branch String:   'settings-parser.c:869,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:870,28'
              BranchSideFuncs:
                - settings_boollist_finish
            - BranchSide:      'settings-parser.c:874,3'
              BranchSideFuncs:
                - array_append_i.3166
                - array_count_i.3172
                - array_delete_i.3167
      Callsites:
        - Src:             'settings-parser.c:860,2'
          Dst:             i_panic
        - Src:             'settings-parser.c:866,7'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:867,3'
          Dst:             array_create_i
        - Src:             'settings-parser.c:870,3'
          Dst:             settings_boollist_finish
        - Src:             'settings-parser.c:874,3'
          Dst:             array_append_i
        - Src:             'settings-parser.c:875,3'
          Dst:             array_count_i
        - Src:             'settings-parser.c:875,3'
          Dst:             array_delete_i
    - functionName:    settings_parse_keyidx_value_nodup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 854
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_idx
        - key
        - value
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:853,9'
          Dst:             settings_parse
    - functionName:    settings_parse
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ctx
        - def
        - key
        - value
        - dup_value
      BBCount:         107
      ICount:          642
      EdgeCount:       131
      CyclomaticComplexity: 26
      functionsReached:
        - array_append_i
        - array_append_space_i
        - array_count_i
        - array_create_i
        - array_delete_i
        - array_get_i
        - array_insert_i
        - array_is_created_i
        - array_lsearch_i
        - get_bool
        - get_enum
        - get_file
        - get_in_port_zero
        - get_octal
        - get_uint
        - get_uintmax
        - i_panic
        - i_strcmp_p
        - i_unreached
        - p_free_internal
        - p_strdup
        - settings_parse_boollist
        - settings_parse_strlist
        - settings_parser_set_error
        - settings_section_unescape
        - settings_value_is_unlimited
        - str_array_length
        - str_parse_get_interval
        - str_parse_get_interval_msecs
        - str_parse_get_size
        - strstr
        - t_pop
        - t_push
        - t_strcut
        - t_strdup_printf
        - t_strsplit
        - t_var_expand
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings-parser.c:620,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:622,13'
              BranchSideFuncs:
                - p_free_internal.3174
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
                - array_get_i.3181
                - t_push
                - settings_parse_boollist
                - t_pop
                - i_panic
                - t_push
                - settings_parse_strlist
                - t_pop
                - i_panic
                - settings_parser_set_error
                - get_enum
                - i_panic
                - t_strcut
                - strstr
                - get_file
                - t_var_expand
                - settings_parser_set_error
                - p_strdup
                - get_in_port_zero
                - settings_value_is_unlimited
                - str_parse_get_size
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_uintmax
                - get_bool
                - i_panic
            - BranchSide:      'settings-parser.c:625,2'
              BranchSideFuncs:
                - p_free_internal.3174
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
                - array_get_i.3181
                - t_push
                - settings_parse_boollist
                - t_pop
                - i_panic
                - t_push
                - settings_parse_strlist
                - t_pop
                - i_panic
                - settings_parser_set_error
                - get_enum
                - i_panic
                - t_strcut
                - strstr
                - get_file
                - t_var_expand
                - settings_parser_set_error
                - p_strdup
                - get_in_port_zero
                - settings_value_is_unlimited
                - str_parse_get_size
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_uintmax
                - get_bool
                - i_panic
        - Branch String:   'settings-parser.c:627,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:628,3'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
                - array_get_i.3181
                - t_push
                - settings_parse_boollist
                - t_pop
                - i_panic
                - t_push
                - settings_parse_strlist
                - t_pop
                - i_panic
                - settings_parser_set_error
                - get_enum
                - i_panic
                - t_strcut
                - strstr
                - get_file
                - t_var_expand
                - settings_parser_set_error
                - p_strdup
                - get_in_port_zero
                - settings_value_is_unlimited
                - str_parse_get_size
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_uintmax
                - get_bool
                - i_panic
            - BranchSide:      'settings-parser.c:632,8'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
                - array_get_i.3181
                - t_push
                - settings_parse_boollist
                - t_pop
                - i_panic
                - t_push
                - settings_parse_strlist
                - t_pop
                - i_panic
                - settings_parser_set_error
                - get_enum
                - i_panic
                - t_strcut
                - strstr
                - get_file
                - t_var_expand
                - settings_parser_set_error
                - p_strdup
                - get_in_port_zero
                - settings_value_is_unlimited
                - str_parse_get_size
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_uintmax
                - get_bool
        - Branch String:   'settings-parser.c:628,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:628,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:629,6'
              BranchSideFuncs:
                - i_unreached
                - t_strdup_printf
                - settings_parser_set_error
                - t_strsplit
                - str_array_length
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
                - array_get_i.3181
                - t_push
                - settings_parse_boollist
                - t_pop
                - i_panic
                - t_push
                - settings_parse_strlist
                - t_pop
                - i_panic
                - settings_parser_set_error
                - get_enum
                - i_panic
                - t_strcut
                - strstr
                - get_file
                - t_var_expand
                - settings_parser_set_error
                - p_strdup
                - get_in_port_zero
                - settings_value_is_unlimited
                - str_parse_get_size
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval_msecs
                - settings_parser_set_error
                - settings_value_is_unlimited
                - str_parse_get_interval
                - settings_parser_set_error
                - get_octal
                - get_uint
                - get_uintmax
                - get_bool
                - i_panic
        - Branch String:   'settings-parser.c:633,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:635,16'
              BranchSideFuncs:
                - get_bool
            - BranchSide:      'settings-parser.c:639,19'
              BranchSideFuncs:
                - get_uintmax
            - BranchSide:      'settings-parser.c:643,16'
              BranchSideFuncs:
                - get_uint
            - BranchSide:      'settings-parser.c:647,17'
              BranchSideFuncs:
                - get_octal
            - BranchSide:      'settings-parser.c:651,35'
              BranchSideFuncs:
                - settings_value_is_unlimited
                - str_parse_get_interval
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:661,35'
              BranchSideFuncs:
                - settings_value_is_unlimited
                - str_parse_get_interval_msecs
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:671,35'
              BranchSideFuncs:
                - settings_value_is_unlimited
                - str_parse_get_size
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:681,24'
              BranchSideFuncs:
                - get_in_port_zero
            - BranchSide:      'settings-parser.c:686,7'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:686,7'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:692,31'
              BranchSideFuncs:
                - t_strcut
                - strstr
                - get_file
                - t_var_expand
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:712,3'
              BranchSideFuncs:
                - get_enum
                - i_panic
            - BranchSide:      'settings-parser.c:719,3'
              BranchSideFuncs:
                - t_push
                - settings_parse_strlist
                - t_pop
                - i_panic
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:729,3'
              BranchSideFuncs:
                - t_push
                - settings_parse_boollist
                - t_pop
                - i_panic
            - BranchSide:      'settings-parser.c:739,35'
              BranchSideFuncs:
                - t_strsplit
                - str_array_length
                - array_is_created_i.3162
                - array_create_i.3163
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
                - array_get_i.3181
            - BranchSide:      'settings-parser.c:773,29'
              BranchSideFuncs:
                - t_strdup_printf
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:777,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'settings-parser.c:779,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:635,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:636,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:637,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:639,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:640,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:641,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:643,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:644,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:645,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:647,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:648,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:649,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:651,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:652,21'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:655,30'
              BranchSideFuncs:
                - str_parse_get_interval
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:655,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:656,30'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:659,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:661,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:662,21'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:665,36'
              BranchSideFuncs:
                - str_parse_get_interval_msecs
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:665,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:666,30'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:669,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:671,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:672,15'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:675,26'
              BranchSideFuncs:
                - str_parse_get_size
                - settings_parser_set_error
        - Branch String:   'settings-parser.c:675,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:676,30'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:679,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:681,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:682,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:683,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:686,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:687,21'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'settings-parser.c:688,27'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:693,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:694,21'
              BranchSideFuncs:
                - t_var_expand
                - get_file
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:700,16'
              BranchSideFuncs:
                - get_file
        - Branch String:   'settings-parser.c:694,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:695,31'
              BranchSideFuncs:
                - settings_parser_set_error
            - BranchSide:      'settings-parser.c:698,3'
              BranchSideFuncs:
                - get_file
        - Branch String:   'settings-parser.c:700,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:704,28'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:707,27'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:712,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:712,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:713,10'
              BranchSideFuncs:
                - get_enum
        - Branch String:   'settings-parser.c:714,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:716,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:717,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:722,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:723,31'
              BranchSideFuncs:
                - settings_parser_set_error
                - t_pop
                - i_panic
            - BranchSide:      'settings-parser.c:724,5'
              BranchSideFuncs:
                - t_pop
                - i_panic
        - Branch String:   'settings-parser.c:724,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:724,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:724,5'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:725,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:726,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:727,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:731,5'
          Branch Sides:
            - BranchSide:      'settings-parser.c:731,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:731,5'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:732,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:733,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:734,3'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:743,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:744,4'
              BranchSideFuncs:
                - array_get_i.3181
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
            - BranchSide:      'settings-parser.c:751,5'
              BranchSideFuncs:
                - array_get_i.3181
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
        - Branch String:   'settings-parser.c:752,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:753,5'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:756,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:757,33'
              BranchSideFuncs:
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - array_insert_i.3161
            - BranchSide:      'settings-parser.c:768,3'
              BranchSideFuncs:
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
        - Branch String:   'settings-parser.c:759,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:760,5'
              BranchSideFuncs:
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
                - array_insert_i.3161
            - BranchSide:      'settings-parser.c:761,9'
              BranchSideFuncs:
                - array_append_i.3166
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_insert_i.3161
        - Branch String:   'settings-parser.c:761,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:762,5'
              BranchSideFuncs:
                - array_insert_i.3161
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_append_i.3166
            - BranchSide:      'settings-parser.c:764,5'
              BranchSideFuncs:
                - array_append_i.3166
                - array_append_space_i.3168
                - array_count_i.3172
                - array_delete_i.3167
                - settings_section_unescape
                - p_strdup
                - array_lsearch_i
                - array_insert_i.3161
      Callsites:
        - Src:             'settings-parser.c:625,2'
          Dst:             p_free_internal
        - Src:             'settings-parser.c:628,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:635,7'
          Dst:             get_bool
        - Src:             'settings-parser.c:639,7'
          Dst:             get_uintmax
        - Src:             'settings-parser.c:643,7'
          Dst:             get_uint
        - Src:             'settings-parser.c:647,7'
          Dst:             get_octal
        - Src:             'settings-parser.c:651,7'
          Dst:             settings_value_is_unlimited
        - Src:             'settings-parser.c:655,7'
          Dst:             str_parse_get_interval
        - Src:             'settings-parser.c:656,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:661,7'
          Dst:             settings_value_is_unlimited
        - Src:             'settings-parser.c:665,7'
          Dst:             str_parse_get_interval_msecs
        - Src:             'settings-parser.c:666,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:671,7'
          Dst:             settings_value_is_unlimited
        - Src:             'settings-parser.c:675,7'
          Dst:             str_parse_get_size
        - Src:             'settings-parser.c:676,4'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:681,7'
          Dst:             get_in_port_zero
        - Src:             'settings-parser.c:687,12'
          Dst:             p_strdup
        - Src:             'settings-parser.c:692,22'
          Dst:             t_strcut
        - Src:             'settings-parser.c:693,7'
          Dst:             strstr
        - Src:             'settings-parser.c:694,8'
          Dst:             t_var_expand
        - Src:             'settings-parser.c:695,5'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:700,7'
          Dst:             get_file
        - Src:             'settings-parser.c:712,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:714,7'
          Dst:             get_enum
        - Src:             'settings-parser.c:719,3'
          Dst:             t_push
        - Src:             'settings-parser.c:720,10'
          Dst:             settings_parse_strlist
        - Src:             'settings-parser.c:723,5'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:724,5'
          Dst:             t_pop
        - Src:             'settings-parser.c:724,5'
          Dst:             i_panic
        - Src:             'settings-parser.c:729,3'
          Dst:             t_push
        - Src:             'settings-parser.c:730,10'
          Dst:             settings_parse_boollist
        - Src:             'settings-parser.c:731,5'
          Dst:             t_pop
        - Src:             'settings-parser.c:731,5'
          Dst:             i_panic
        - Src:             'settings-parser.c:741,4'
          Dst:             t_strsplit
        - Src:             'settings-parser.c:742,27'
          Dst:             str_array_length
        - Src:             'settings-parser.c:743,8'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:744,4'
          Dst:             array_create_i
        - Src:             'settings-parser.c:751,5'
          Dst:             array_get_i
        - Src:             'settings-parser.c:758,5'
          Dst:             settings_section_unescape
        - Src:             'settings-parser.c:757,24'
          Dst:             p_strdup
        - Src:             'settings-parser.c:759,8'
          Dst:             array_lsearch_i
        - Src:             'settings-parser.c:759,8'
          Dst:             i_strcmp_p
        - Src:             'settings-parser.c:762,5'
          Dst:             array_insert_i
        - Src:             'settings-parser.c:764,5'
          Dst:             array_append_i
        - Src:             'settings-parser.c:768,3'
          Dst:             array_append_space_i
        - Src:             'settings-parser.c:769,3'
          Dst:             array_count_i
        - Src:             'settings-parser.c:769,3'
          Dst:             array_delete_i
        - Src:             'settings-parser.c:773,34'
          Dst:             t_strdup_printf
        - Src:             'settings-parser.c:773,3'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:777,3'
          Dst:             i_unreached
    - functionName:    settings_parse_keyvalue_nodup
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - value
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parse_keyvalue_real
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:846,9'
          Dst:             settings_parse_keyvalue_real
    - functionName:    settings_parse_keyvalue_real
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ctx
        - key
        - value
        - dup_value
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - settings_find_key
        - settings_parse
        - settings_parser_set_error
        - t_strconcat
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings-parser.c:818,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:819,29'
              BranchSideFuncs:
                - settings_parse
            - BranchSide:      'settings-parser.c:824,21'
              BranchSideFuncs:
                - settings_parse
        - Branch String:   'settings-parser.c:824,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:825,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:826,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:818,7'
          Dst:             settings_find_key
        - Src:             'settings-parser.c:820,4'
          Dst:             t_strconcat
        - Src:             'settings-parser.c:819,3'
          Dst:             settings_parser_set_error
        - Src:             'settings-parser.c:824,6'
          Dst:             settings_parse
    - functionName:    settings_parse_keyidx_value
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 838
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_idx
        - key
        - value
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:839,9'
          Dst:             settings_parse
    - functionName:    settings_parse_keyvalue
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 832
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key
        - value
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parse_keyvalue_real
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings-parser.c:832,9'
          Dst:             settings_parse_keyvalue_real
    - functionName:    settings_file_get_value
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - file
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_memcpy
        - p_malloc
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:514,21'
          Branch Sides:
            - BranchSide:      'settings-parser.c:514,42'
              BranchSideFuncs:
                - strlen
                - strlen
                - p_malloc.3192
                - i_memcpy.3193
                - i_memcpy.3193
            - BranchSide:      'settings-parser.c:514,21'
              BranchSideFuncs:
                - strlen
                - strlen
                - p_malloc.3192
                - i_memcpy.3193
                - i_memcpy.3193
      Callsites:
        - Src:             'settings-parser.c:515,20'
          Dst:             strlen
        - Src:             'settings-parser.c:516,23'
          Dst:             strlen
        - Src:             'settings-parser.c:518,16'
          Dst:             p_malloc
        - Src:             'settings-parser.c:519,2'
          Dst:             i_memcpy
        - Src:             'settings-parser.c:521,2'
          Dst:             i_memcpy
    - functionName:    settings_file_has_path
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - value
      BBCount:         5
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - strchr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:506,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:507,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:508,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:505,18'
          Dst:             strchr
        - Src:             'settings-parser.c:507,3'
          Dst:             i_panic
    - functionName:    settings_file_get
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - value
        - path_pool
        - file_r
      BBCount:         8
      ICount:          65
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - p_strdup_until
        - strchr
      functionUses:    10
      BranchProfiles:
        - Branch String:   'settings-parser.c:489,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:490,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:495,13'
              BranchSideFuncs:
                - strchr
                - p_strdup_until
                - i_panic
        - Branch String:   'settings-parser.c:496,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:497,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:498,32'
              BranchSideFuncs:
                - p_strdup_until
      Callsites:
        - Src:             'settings-parser.c:495,6'
          Dst:             strchr
        - Src:             'settings-parser.c:497,3'
          Dst:             i_panic
        - Src:             'settings-parser.c:498,17'
          Dst:             p_strdup_until
    - functionName:    settings_boollist_get
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         12
      ICount:          67
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - array_get_i
        - array_is_created_i
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:471,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:471,6'
              BranchSideFuncs:
                - array_get_i.3181
                - i_panic
            - BranchSide:      'settings-parser.c:471,6'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:471,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:471,6'
              BranchSideFuncs:
                - array_get_i.3181
                - i_panic
            - BranchSide:      'settings-parser.c:472,13'
              BranchSideFuncs:
                - array_get_i.3181
                - i_panic
        - Branch String:   'settings-parser.c:473,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:473,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:479,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:471,6'
          Dst:             array_is_created_i
        - Src:             'settings-parser.c:472,13'
          Dst:             array_get_i
        - Src:             'settings-parser.c:473,3'
          Dst:             i_panic
    - functionName:    settings_parser_get_error
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_set
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setting_parser_info_find_key
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
        - key
        - idx_r
      BBCount:         38
      ICount:          225
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - str_begins
        - str_begins_builtin_success
        - strlen
        - strncmp
      functionUses:    5
      BranchProfiles:
        - Branch String:   'settings-parser.c:132,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:133,7'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
            - BranchSide:      'settings-parser.c:149,2'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:133,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:133,8'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
                - str_begins
            - BranchSide:      'settings-parser.c:133,8'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
        - Branch String:   'settings-parser.c:133,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:133,7'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
            - BranchSide:      'settings-parser.c:135,12'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
        - Branch String:   'settings-parser.c:133,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:133,8'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
            - BranchSide:      'settings-parser.c:133,8'
              BranchSideFuncs:
                - strlen
                - str_begins_builtin_success.3250
                - str_begins
                - strlen
                - strncmp
        - Branch String:   'settings-parser.c:133,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:133,7'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
            - BranchSide:      'settings-parser.c:135,12'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
        - Branch String:   'settings-parser.c:133,7'
          Branch Sides:
            - BranchSide:      'settings-parser.c:135,12'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
            - BranchSide:      'settings-parser.c:148,2'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
        - Branch String:   'settings-parser.c:135,12'
          Branch Sides:
            - BranchSide:      'settings-parser.c:137,4'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:141,14'
              BranchSideFuncs:
                - str_begins
                - strlen
                - strncmp
                - strlen
                - str_begins_builtin_success.3250
        - Branch String:   'settings-parser.c:137,17'
          Branch Sides:
            - BranchSide:      'settings-parser.c:137,20'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:137,4'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:137,4'
          Branch Sides:
            - BranchSide:      'settings-parser.c:138,6'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:139,13'
              BranchSideFuncs: []
        - Branch String:   'settings-parser.c:142,45'
          Branch Sides:
            - BranchSide:      'settings-parser.c:143,8'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:145,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:133,8'
          Dst:             str_begins
        - Src:             'settings-parser.c:133,8'
          Dst:             strlen
        - Src:             'settings-parser.c:133,8'
          Dst:             strncmp
        - Src:             'settings-parser.c:133,8'
          Dst:             strlen
        - Src:             'settings-parser.c:133,8'
          Dst:             str_begins_builtin_success
    - functionName:    setting_parser_info_get_define_count
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - info
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:122,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:123,8'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:124,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    settings_parser_unref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ctx
      BBCount:         14
      ICount:          79
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - p_free_internal
        - pool_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:106,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:107,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:108,3'
              BranchSideFuncs:
                - p_free_internal.3174
                - pool_unref.3253
                - pool_unref.3253
                - i_panic
        - Branch String:   'settings-parser.c:110,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:110,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:111,8'
              BranchSideFuncs:
                - p_free_internal.3174
                - pool_unref.3253
                - pool_unref.3253
        - Branch String:   'settings-parser.c:111,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:112,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:113,2'
              BranchSideFuncs:
                - p_free_internal.3174
                - pool_unref.3253
                - pool_unref.3253
      Callsites:
        - Src:             'settings-parser.c:110,2'
          Dst:             i_panic
        - Src:             'settings-parser.c:113,2'
          Dst:             p_free_internal
        - Src:             'settings-parser.c:114,2'
          Dst:             pool_unref
        - Src:             'settings-parser.c:115,2'
          Dst:             pool_unref
    - functionName:    settings_parser_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'settings-parser.c:98,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:98,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'settings-parser.c:98,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'settings-parser.c:98,2'
          Dst:             i_panic
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setting_parser_copy_defaults
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - info
      BBCount:         16
      ICount:          109
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - i_memcpy
        - p_strdup_until
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:49,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:50,3'
              BranchSideFuncs: []
            - BranchSide:      'settings-parser.c:52,2'
              BranchSideFuncs:
                - i_memcpy.3193
                - strchr
                - p_strdup_until
        - Branch String:   'settings-parser.c:53,2'
          Branch Sides:
            - BranchSide:      'settings-parser.c:53,2'
              BranchSideFuncs:
                - strchr
                - p_strdup_until
            - BranchSide:      'settings-parser.c:54,11'
              BranchSideFuncs:
                - strchr
                - p_strdup_until
        - Branch String:   'settings-parser.c:54,3'
          Branch Sides:
            - BranchSide:      'settings-parser.c:58,11'
              BranchSideFuncs:
                - strchr
                - p_strdup_until
            - BranchSide:      'settings-parser.c:65,4'
              BranchSideFuncs:
                - strchr
                - p_strdup_until
        - Branch String:   'settings-parser.c:60,8'
          Branch Sides:
            - BranchSide:      'settings-parser.c:61,28'
              BranchSideFuncs:
                - p_strdup_until
                - strchr
            - BranchSide:      'settings-parser.c:62,4'
              BranchSideFuncs:
                - strchr
                - p_strdup_until
      Callsites:
        - Src:             'settings-parser.c:52,2'
          Dst:             i_memcpy
        - Src:             'settings-parser.c:59,8'
          Dst:             strchr
        - Src:             'settings-parser.c:61,13'
          Dst:             p_strdup_until
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-settings/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    settings_parser_init
      functionSourceFile: '/src/dovecot/src/lib-settings/settings-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - set_pool
        - root
        - flags
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - pool_ref
        - setting_parser_copy_defaults
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings-parser.c:86,6'
          Branch Sides:
            - BranchSide:      'settings-parser.c:86,6'
              BranchSideFuncs:
                - p_malloc.3192
                - setting_parser_copy_defaults
                - pool_ref.3257
            - BranchSide:      'settings-parser.c:88,13'
              BranchSideFuncs:
                - p_malloc.3192
                - setting_parser_copy_defaults
                - pool_ref.3257
      Callsites:
        - Src:             'settings-parser.c:77,16'
          Dst:             pool_alloconly_create
        - Src:             'settings-parser.c:79,8'
          Dst:             malloc_multiply_check
        - Src:             'settings-parser.c:79,8'
          Dst:             p_malloc
        - Src:             'settings-parser.c:88,4'
          Dst:             p_malloc
        - Src:             'settings-parser.c:89,3'
          Dst:             setting_parser_copy_defaults
        - Src:             'settings-parser.c:92,2'
          Dst:             pool_ref
    - functionName:    dns_match_wildcard
      functionSourceFile: '/src/dovecot/src/lib-dns/dns-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - mask
      BBCount:         32
      ICount:          171
      EdgeCount:       38
      CyclomaticComplexity: 8
      functionsReached:
        - dns_tolower
        - i_panic
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'dns-util.c:68,2'
          Branch Sides:
            - BranchSide:      'dns-util.c:68,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
                - i_panic
            - BranchSide:      'dns-util.c:68,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
                - i_panic
        - Branch String:   'dns-util.c:68,2'
          Branch Sides:
            - BranchSide:      'dns-util.c:68,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'dns-util.c:70,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:70,21'
          Branch Sides:
            - BranchSide:      'dns-util.c:70,25'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:70,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:70,2'
          Branch Sides:
            - BranchSide:      'dns-util.c:71,11'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:83,7'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:71,3'
          Branch Sides:
            - BranchSide:      'dns-util.c:73,18'
              BranchSideFuncs:
                - strchr
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:78,4'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:80,21'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - strchr
        - Branch String:   'dns-util.c:74,21'
          Branch Sides:
            - BranchSide:      'dns-util.c:74,40'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:74,24'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:74,8'
          Branch Sides:
            - BranchSide:      'dns-util.c:74,40'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:75,8'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:80,8'
          Branch Sides:
            - BranchSide:      'dns-util.c:80,50'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:81,3'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:83,6'
          Branch Sides:
            - BranchSide:      'dns-util.c:83,24'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:84,22'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
      Callsites:
        - Src:             'dns-util.c:68,2'
          Dst:             i_panic
        - Src:             'dns-util.c:73,11'
          Dst:             strchr
        - Src:             'dns-util.c:80,8'
          Dst:             dns_tolower
        - Src:             'dns-util.c:80,30'
          Dst:             dns_tolower
        - Src:             'dns-util.c:84,9'
          Dst:             dns_tolower
        - Src:             'dns-util.c:84,31'
          Dst:             dns_tolower
    - functionName:    dns_tolower
      functionSourceFile: '/src/dovecot/src/lib-dns/./dns-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 6
      functionLinenumberEnd: 9
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - c
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    10
      BranchProfiles:
        - Branch String:   './dns-util.h:7,15'
          Branch Sides:
            - BranchSide:      './dns-util.h:7,18'
              BranchSideFuncs: []
            - BranchSide:      './dns-util.h:7,15'
              BranchSideFuncs: []
        - Branch String:   './dns-util.h:7,6'
          Branch Sides:
            - BranchSide:      './dns-util.h:7,6'
              BranchSideFuncs: []
            - BranchSide:      './dns-util.h:8,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    strchr_ba
      functionSourceFile: '/src/dovecot/src/lib-dns/dns-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 12
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - a
        - b
        - c
      BBCount:         8
      ICount:          47
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'dns-util.c:11,11'
          Branch Sides:
            - BranchSide:      'dns-util.c:11,15'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:11,2'
              BranchSideFuncs: []
        - Branch String:   'dns-util.c:11,2'
          Branch Sides:
            - BranchSide:      'dns-util.c:11,24'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:12,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    dns_compare_labels
      functionSourceFile: '/src/dovecot/src/lib-dns/dns-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - a
        - b
      BBCount:         32
      ICount:          218
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - dns_ncompare
        - dns_tolower
        - strchr_ba
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'dns-util.c:37,16'
          Branch Sides:
            - BranchSide:      'dns-util.c:37,19'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
            - BranchSide:      'dns-util.c:38,6'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:37,6'
          Branch Sides:
            - BranchSide:      'dns-util.c:37,30'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:38,6'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:38,16'
          Branch Sides:
            - BranchSide:      'dns-util.c:38,19'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
            - BranchSide:      'dns-util.c:39,6'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:38,6'
          Branch Sides:
            - BranchSide:      'dns-util.c:38,30'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:39,6'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:39,16'
          Branch Sides:
            - BranchSide:      'dns-util.c:39,19'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
            - BranchSide:      'dns-util.c:41,22'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:39,6'
          Branch Sides:
            - BranchSide:      'dns-util.c:39,30'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:41,22'
              BranchSideFuncs:
                - strlen
                - strlen
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:46,18'
          Branch Sides:
            - BranchSide:      'dns-util.c:46,21'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
            - BranchSide:      'dns-util.c:46,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:46,31'
          Branch Sides:
            - BranchSide:      'dns-util.c:46,34'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
            - BranchSide:      'dns-util.c:46,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_ncompare
        - Branch String:   'dns-util.c:46,2'
          Branch Sides:
            - BranchSide:      'dns-util.c:48,23'
              BranchSideFuncs:
                - strchr_ba
                - strchr_ba
                - dns_ncompare
                - dns_tolower
                - dns_tolower
                - dns_ncompare
            - BranchSide:      'dns-util.c:63,22'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:50,7'
          Branch Sides:
            - BranchSide:      'dns-util.c:55,24'
              BranchSideFuncs:
                - dns_ncompare
            - BranchSide:      'dns-util.c:58,23'
              BranchSideFuncs:
                - dns_ncompare
                - dns_tolower
                - dns_tolower
                - strchr_ba
                - strchr_ba
                - dns_ncompare
        - Branch String:   'dns-util.c:56,9'
          Branch Sides:
            - BranchSide:      'dns-util.c:57,24'
              BranchSideFuncs:
                - dns_ncompare
            - BranchSide:      'dns-util.c:57,24'
              BranchSideFuncs:
                - dns_ncompare
      Callsites:
        - Src:             'dns-util.c:41,26'
          Dst:             strlen
        - Src:             'dns-util.c:42,26'
          Dst:             strlen
        - Src:             'dns-util.c:48,13'
          Dst:             strchr_ba
        - Src:             'dns-util.c:49,13'
          Dst:             strchr_ba
        - Src:             'dns-util.c:55,11'
          Dst:             dns_ncompare
        - Src:             'dns-util.c:58,10'
          Dst:             dns_ncompare
        - Src:             'dns-util.c:63,9'
          Dst:             dns_tolower
        - Src:             'dns-util.c:63,33'
          Dst:             dns_tolower
    - functionName:    dns_ncompare
      functionSourceFile: '/src/dovecot/src/lib-dns/dns-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - a
        - b
        - n
      BBCount:         30
      ICount:          156
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - dns_tolower
      functionUses:    3
      BranchProfiles:
        - Branch String:   'dns-util.c:17,16'
          Branch Sides:
            - BranchSide:      'dns-util.c:17,19'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:18,6'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:17,6'
          Branch Sides:
            - BranchSide:      'dns-util.c:17,30'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:18,6'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:18,16'
          Branch Sides:
            - BranchSide:      'dns-util.c:18,19'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:19,6'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:18,6'
          Branch Sides:
            - BranchSide:      'dns-util.c:18,30'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:19,6'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:19,16'
          Branch Sides:
            - BranchSide:      'dns-util.c:19,19'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:21,13'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:19,6'
          Branch Sides:
            - BranchSide:      'dns-util.c:19,30'
              BranchSideFuncs: []
            - BranchSide:      'dns-util.c:21,13'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:21,26'
          Branch Sides:
            - BranchSide:      'dns-util.c:21,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:22,7'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:22,17'
          Branch Sides:
            - BranchSide:      'dns-util.c:21,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:23,7'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:23,17'
          Branch Sides:
            - BranchSide:      'dns-util.c:21,2'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:24,19'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
        - Branch String:   'dns-util.c:21,2'
          Branch Sides:
            - BranchSide:      'dns-util.c:25,7'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
                - dns_tolower
                - dns_tolower
            - BranchSide:      'dns-util.c:27,22'
              BranchSideFuncs:
                - dns_tolower
                - dns_tolower
      Callsites:
        - Src:             'dns-util.c:24,6'
          Dst:             dns_tolower
        - Src:             'dns-util.c:24,25'
          Dst:             dns_tolower
        - Src:             'dns-util.c:27,9'
          Dst:             dns_tolower
        - Src:             'dns-util.c:27,27'
          Dst:             dns_tolower
    - functionName:    dns_compare
      functionSourceFile: '/src/dovecot/src/lib-dns/dns-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - a
        - b
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dns_ncompare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'dns-util.c:32,9'
          Dst:             dns_ncompare
    - functionName:    extract_number
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - value_r
        - error_r
      BBCount:         25
      ICount:          192
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-program.c:347,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:349,22'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:354,21'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:355,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:356,12'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:357,13'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:357,13'
          Branch Sides:
            - BranchSide:      'expansion-program.c:358,12'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:360,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:369,25'
          Branch Sides:
            - BranchSide:      'expansion-program.c:369,23'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:369,23'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:369,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:370,6'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:379,8'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:373,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:374,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:375,9'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:379,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:380,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:384,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:384,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:385,12'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:387,13'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    extract_name
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - value_r
        - error_r
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memchr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-program.c:310,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:311,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:314,15'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:315,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:316,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:319,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-program.c:309,14'
          Dst:             memchr
    - functionName:    var_expand_program_import_stmt
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - program
        - error_r
      BBCount:         72
      ICount:          575
      EdgeCount:       96
      CyclomaticComplexity: 26
      functionsReached:
        - extract_name
        - extract_number
        - extract_value
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-program.c:410,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:411,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:412,6'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:412,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:413,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:416,2'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:416,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:416,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:416,2'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:421,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:422,20'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
            - BranchSide:      'expansion-program.c:424,39'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:425,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:425,36'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
            - BranchSide:      'expansion-program.c:426,16'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:433,18'
          Branch Sides:
            - BranchSide:      'expansion-program.c:433,22'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
            - BranchSide:      'expansion-program.c:433,2'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:433,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:435,4'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
            - BranchSide:      'expansion-program.c:505,7'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:437,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:438,17'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
            - BranchSide:      'expansion-program.c:441,23'
              BranchSideFuncs:
                - extract_name
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_value
        - Branch String:   'expansion-program.c:439,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:439,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:450,12'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
        - Branch String:   'expansion-program.c:443,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:444,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:445,4'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
        - Branch String:   'expansion-program.c:445,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:445,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:450,12'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
        - Branch String:   'expansion-program.c:450,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:452,4'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
            - BranchSide:      'expansion-program.c:456,4'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
            - BranchSide:      'expansion-program.c:460,4'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
            - BranchSide:      'expansion-program.c:464,5'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:467,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:467,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:467,3'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
        - Branch String:   'expansion-program.c:469,67'
          Branch Sides:
            - BranchSide:      'expansion-program.c:470,7'
              BranchSideFuncs:
                - extract_value
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
            - BranchSide:      'expansion-program.c:471,24'
              BranchSideFuncs:
                - extract_value
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
        - Branch String:   'expansion-program.c:469,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:471,24'
              BranchSideFuncs:
                - extract_value
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
            - BranchSide:      'expansion-program.c:477,14'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
        - Branch String:   'expansion-program.c:473,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:474,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:475,4'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:475,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:475,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:489,7'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:477,14'
          Branch Sides:
            - BranchSide:      'expansion-program.c:478,25'
              BranchSideFuncs:
                - extract_number
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_value
            - BranchSide:      'expansion-program.c:485,5'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:480,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:481,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:483,4'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:483,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:483,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:489,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:490,19'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
            - BranchSide:      'expansion-program.c:492,17'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:495,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:496,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:497,15'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
        - Branch String:   'expansion-program.c:497,14'
          Branch Sides:
            - BranchSide:      'expansion-program.c:498,4'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - extract_name
                - extract_number
                - extract_value
            - BranchSide:      'expansion-program.c:500,5'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:505,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:506,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:508,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:508,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:508,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:508,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-program.c:409,12'
          Dst:             extract_name
        - Src:             'expansion-program.c:419,3'
          Dst:             malloc_multiply_check
        - Src:             'expansion-program.c:419,3'
          Dst:             p_malloc
        - Src:             'expansion-program.c:435,4'
          Dst:             malloc_multiply_check
        - Src:             'expansion-program.c:435,4'
          Dst:             p_malloc
        - Src:             'expansion-program.c:441,10'
          Dst:             extract_name
        - Src:             'expansion-program.c:471,10'
          Dst:             extract_value
        - Src:             'expansion-program.c:478,10'
          Dst:             extract_number
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    6
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    6
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    extract_value
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - value_r
        - error_r
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memchr
        - str_tabunescape
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-program.c:329,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:330,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:333,15'
              BranchSideFuncs:
                - str_tabunescape
      Callsites:
        - Src:             'expansion-program.c:328,14'
          Dst:             memchr
        - Src:             'expansion-program.c:335,13'
          Dst:             str_tabunescape
    - functionName:    export_number
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - number
      BBCount:         18
      ICount:          102
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - str_append_c
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-program.c:195,18'
          Branch Sides:
            - BranchSide:      'expansion-program.c:195,21'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:203,6'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
        - Branch String:   'expansion-program.c:195,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:196,7'
              BranchSideFuncs:
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:203,6'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
        - Branch String:   'expansion-program.c:203,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:204,3'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:207,3'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
        - Branch String:   'expansion-program.c:212,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:212,2'
              BranchSideFuncs:
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:213,7'
              BranchSideFuncs:
                - str_append_c.3358
        - Branch String:   'expansion-program.c:213,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:214,6'
              BranchSideFuncs:
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:216,6'
              BranchSideFuncs:
                - str_append_c.3358
      Callsites:
        - Src:             'expansion-program.c:197,3'
          Dst:             str_append_c
        - Src:             'expansion-program.c:204,3'
          Dst:             str_append_c
        - Src:             'expansion-program.c:207,3'
          Dst:             str_append_c
        - Src:             'expansion-program.c:219,3'
          Dst:             str_append_c
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_program_import
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - program_r
        - error_r
      BBCount:         7
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - strlen
        - var_expand_program_import_sized
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-program.c:630,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:630,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:630,2'
              BranchSideFuncs:
                - strlen
                - var_expand_program_import_sized
      Callsites:
        - Src:             'expansion-program.c:630,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:631,47'
          Dst:             strlen
        - Src:             'expansion-program.c:631,9'
          Dst:             var_expand_program_import_sized
    - functionName:    var_expand_program_import_sized
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - program_r
        - error_r
      BBCount:         31
      ICount:          175
      EdgeCount:       37
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
        - p_strndup
        - pool_alloconly_create
        - pool_unref
        - t_pop
        - t_push
        - var_expand_program_import_one
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-program.c:587,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:587,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:590,6'
              BranchSideFuncs:
                - pool_alloconly_create
                - p_strndup
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
        - Branch String:   'expansion-program.c:590,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:591,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:595,75'
              BranchSideFuncs:
                - pool_alloconly_create
                - p_strndup
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
        - Branch String:   'expansion-program.c:601,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:603,4'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - pool_unref.3368
                - i_panic
            - BranchSide:      'expansion-program.c:618,6'
              BranchSideFuncs:
                - pool_unref.3368
        - Branch String:   'expansion-program.c:608,5'
          Branch Sides:
            - BranchSide:      'expansion-program.c:608,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:608,5'
              BranchSideFuncs:
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
        - Branch String:   'expansion-program.c:609,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:610,4'
              BranchSideFuncs:
                - pool_unref.3368
            - BranchSide:      'expansion-program.c:611,7'
              BranchSideFuncs:
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
        - Branch String:   'expansion-program.c:611,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:612,12'
              BranchSideFuncs:
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
            - BranchSide:      'expansion-program.c:613,7'
              BranchSideFuncs:
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
        - Branch String:   'expansion-program.c:613,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:614,17'
              BranchSideFuncs:
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
            - BranchSide:      'expansion-program.c:615,10'
              BranchSideFuncs:
                - pool_unref.3368
                - malloc_multiply_check.3348
                - p_malloc.3349
                - t_push
                - var_expand_program_import_one
                - t_pop
                - i_panic
        - Branch String:   'expansion-program.c:618,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:619,3'
              BranchSideFuncs:
                - pool_unref.3368
            - BranchSide:      'expansion-program.c:621,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-program.c:587,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:595,16'
          Dst:             pool_alloconly_create
        - Src:             'expansion-program.c:599,20'
          Dst:             p_strndup
        - Src:             'expansion-program.c:603,4'
          Dst:             malloc_multiply_check
        - Src:             'expansion-program.c:603,4'
          Dst:             p_malloc
        - Src:             'expansion-program.c:605,3'
          Dst:             t_push
        - Src:             'expansion-program.c:606,10'
          Dst:             var_expand_program_import_one
        - Src:             'expansion-program.c:608,5'
          Dst:             t_pop
        - Src:             'expansion-program.c:608,5'
          Dst:             i_panic
        - Src:             'expansion-program.c:619,3'
          Dst:             pool_unref
    - functionName:    var_expand_program_import_one
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _data
        - _size
        - program
        - error_r
      BBCount:         47
      ICount:          442
      EdgeCount:       65
      CyclomaticComplexity: 20
      functionsReached:
        - extract_value
        - malloc_multiply_check
        - memchr
        - p_malloc
        - p_strsplit
        - var_expand_program_import_stmt
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-program.c:523,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:524,3'
              BranchSideFuncs:
                - extract_value
                - malloc_multiply_check.3348
                - p_malloc.3349
                - malloc_multiply_check.3348
                - p_malloc.3349
            - BranchSide:      'expansion-program.c:543,14'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
        - Branch String:   'expansion-program.c:524,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:524,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:524,3'
              BranchSideFuncs:
                - extract_value
                - malloc_multiply_check.3348
                - p_malloc.3349
                - malloc_multiply_check.3348
                - p_malloc.3349
        - Branch String:   'expansion-program.c:526,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:527,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:528,3'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - malloc_multiply_check.3348
                - p_malloc.3349
        - Branch String:   'expansion-program.c:528,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:528,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:577,11'
              BranchSideFuncs:
                - malloc_multiply_check.3348
                - p_malloc.3349
                - malloc_multiply_check.3348
                - p_malloc.3349
        - Branch String:   'expansion-program.c:543,13'
          Branch Sides:
            - BranchSide:      'expansion-program.c:544,3'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
            - BranchSide:      'expansion-program.c:574,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:544,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:544,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:545,11'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
        - Branch String:   'expansion-program.c:545,24'
          Branch Sides:
            - BranchSide:      'expansion-program.c:545,27'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
            - BranchSide:      'expansion-program.c:545,3'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
        - Branch String:   'expansion-program.c:545,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:546,45'
              BranchSideFuncs:
                - var_expand_program_import_stmt
                - memchr
                - p_strsplit
            - BranchSide:      'expansion-program.c:560,8'
              BranchSideFuncs:
                - memchr
                - p_strsplit
        - Branch String:   'expansion-program.c:547,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:548,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:549,4'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
        - Branch String:   'expansion-program.c:549,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:549,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:549,4'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
        - Branch String:   'expansion-program.c:550,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:551,5'
              BranchSideFuncs:
                - memchr
                - p_strsplit
            - BranchSide:      'expansion-program.c:553,16'
              BranchSideFuncs:
                - memchr
                - p_strsplit
                - var_expand_program_import_stmt
        - Branch String:   'expansion-program.c:551,5'
          Branch Sides:
            - BranchSide:      'expansion-program.c:551,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:560,8'
              BranchSideFuncs:
                - memchr
                - p_strsplit
        - Branch String:   'expansion-program.c:557,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:545,11'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:557,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:560,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:561,29'
              BranchSideFuncs:
                - memchr
                - p_strsplit
            - BranchSide:      'expansion-program.c:571,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:562,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:563,6'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:566,17'
              BranchSideFuncs:
                - p_strsplit
        - Branch String:   'expansion-program.c:569,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:569,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:573,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:571,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:571,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:573,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-program.c:525,9'
          Dst:             extract_value
        - Src:             'expansion-program.c:532,4'
          Dst:             malloc_multiply_check
        - Src:             'expansion-program.c:532,4'
          Dst:             p_malloc
        - Src:             'expansion-program.c:534,4'
          Dst:             malloc_multiply_check
        - Src:             'expansion-program.c:534,4'
          Dst:             p_malloc
        - Src:             'expansion-program.c:546,14'
          Dst:             var_expand_program_import_stmt
        - Src:             'expansion-program.c:561,22'
          Dst:             memchr
        - Src:             'expansion-program.c:568,5'
          Dst:             p_strsplit
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:176,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    var_expand_program_export
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - program
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_c
        - t_str_new
        - var_expand_program_export_append
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-program.c:299,19'
          Dst:             t_str_new
        - Src:             'expansion-program.c:300,2'
          Dst:             var_expand_program_export_append
        - Src:             'expansion-program.c:301,9'
          Dst:             str_c
    - functionName:    var_expand_program_export_append
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - program
      BBCount:         21
      ICount:          116
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - str_append_c
        - str_append_tabescaped
        - var_expand_program_export_one
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-program.c:278,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:278,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:279,2'
              BranchSideFuncs:
                - str_append_c.3358
                - var_expand_program_export_one
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:279,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:279,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:281,2'
              BranchSideFuncs:
                - str_append_c.3358
                - var_expand_program_export_one
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_panic
        - Branch String:   'expansion-program.c:281,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:282,7'
              BranchSideFuncs:
                - str_append_c.3358
                - var_expand_program_export_one
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_panic
            - BranchSide:      'expansion-program.c:295,1'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:282,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:283,4'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - var_expand_program_export_one
                - i_panic
            - BranchSide:      'expansion-program.c:289,4'
              BranchSideFuncs:
                - str_append_c.3358
                - var_expand_program_export_one
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_panic
        - Branch String:   'expansion-program.c:283,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:283,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:285,4'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - var_expand_program_export_one
                - i_panic
      Callsites:
        - Src:             'expansion-program.c:278,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:279,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:283,4'
          Dst:             i_panic
        - Src:             'expansion-program.c:285,4'
          Dst:             str_append_c
        - Src:             'expansion-program.c:286,4'
          Dst:             str_append_tabescaped
        - Src:             'expansion-program.c:287,4'
          Dst:             str_append_c
        - Src:             'expansion-program.c:289,4'
          Dst:             str_append_c
        - Src:             'expansion-program.c:290,4'
          Dst:             var_expand_program_export_one
    - functionName:    var_expand_program_export_one
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - program
        - dest
      BBCount:         34
      ICount:          212
      EdgeCount:       39
      CyclomaticComplexity: 7
      functionsReached:
        - export_number
        - i_panic
        - i_unreached
        - str_append
        - str_append_c
        - str_append_tabescaped
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-program.c:227,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:228,14'
              BranchSideFuncs:
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
            - BranchSide:      'expansion-program.c:264,28'
              BranchSideFuncs:
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
        - Branch String:   'expansion-program.c:231,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:232,8'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
            - BranchSide:      'expansion-program.c:257,3'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
                - str_append_c.3358
        - Branch String:   'expansion-program.c:232,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:233,16'
              BranchSideFuncs:
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
            - BranchSide:      'expansion-program.c:234,4'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
        - Branch String:   'expansion-program.c:235,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:237,5'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - i_unreached
                - str_append.3377
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:242,5'
              BranchSideFuncs:
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:246,5'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
                - str_append_c.3358
            - BranchSide:      'expansion-program.c:251,5'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'expansion-program.c:254,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:231,3'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
            - BranchSide:      'expansion-program.c:255,5'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
        - Branch String:   'expansion-program.c:259,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:260,4'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
            - BranchSide:      'expansion-program.c:262,4'
              BranchSideFuncs:
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - str_append_c.3358
                - str_append_c.3358
                - export_number
                - str_append_c.3358
                - str_append_tabescaped
                - str_append_c.3358
                - i_unreached
                - str_append.3377
        - Branch String:   'expansion-program.c:266,22'
          Branch Sides:
            - BranchSide:      'expansion-program.c:266,26'
              BranchSideFuncs:
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
            - BranchSide:      'expansion-program.c:266,2'
              BranchSideFuncs:
                - str_append_c.3358
                - strchr
                - str_append.3377
                - str_append_c.3358
                - i_panic
        - Branch String:   'expansion-program.c:266,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:268,3'
              BranchSideFuncs:
                - strchr
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - i_panic
            - BranchSide:      'expansion-program.c:272,2'
              BranchSideFuncs:
                - str_append_c.3358
        - Branch String:   'expansion-program.c:268,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:268,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:269,14'
              BranchSideFuncs:
                - str_append.3377
                - str_append_c.3358
                - str_append_c.3358
                - strchr
                - i_panic
      Callsites:
        - Src:             'expansion-program.c:228,3'
          Dst:             str_append
        - Src:             'expansion-program.c:229,3'
          Dst:             str_append_c
        - Src:             'expansion-program.c:233,5'
          Dst:             str_append
        - Src:             'expansion-program.c:234,4'
          Dst:             str_append_c
        - Src:             'expansion-program.c:237,5'
          Dst:             str_append_c
        - Src:             'expansion-program.c:238,5'
          Dst:             str_append_tabescaped
        - Src:             'expansion-program.c:239,5'
          Dst:             str_append_c
        - Src:             'expansion-program.c:242,5'
          Dst:             str_append_c
        - Src:             'expansion-program.c:243,5'
          Dst:             export_number
        - Src:             'expansion-program.c:246,5'
          Dst:             str_append_c
        - Src:             'expansion-program.c:247,5'
          Dst:             str_append_tabescaped
        - Src:             'expansion-program.c:248,5'
          Dst:             str_append_c
        - Src:             'expansion-program.c:251,5'
          Dst:             i_unreached
        - Src:             'expansion-program.c:255,5'
          Dst:             str_append_c
        - Src:             'expansion-program.c:257,3'
          Dst:             str_append_c
        - Src:             'expansion-program.c:260,4'
          Dst:             str_append_c
        - Src:             'expansion-program.c:262,4'
          Dst:             str_append_c
        - Src:             'expansion-program.c:268,3'
          Dst:             strchr
        - Src:             'expansion-program.c:268,3'
          Dst:             i_panic
        - Src:             'expansion-program.c:269,3'
          Dst:             str_append
        - Src:             'expansion-program.c:270,3'
          Dst:             str_append_c
        - Src:             'expansion-program.c:272,2'
          Dst:             str_append_c
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    var_expand_program_variables
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - program
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_append_str
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:61,2'
          Dst:             buffer_append
    - functionName:    var_expand_program_execute
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - program
        - params
        - error_r
      BBCount:         111
      ICount:          590
      EdgeCount:       140
      CyclomaticComplexity: 31
      functionsReached:
        - binary_to_hex
        - i_panic
        - p_free_internal
        - str_append
        - str_append_str
        - str_c
        - str_free
        - str_new
        - t_pop_pass_str
        - t_push
        - t_strdup
        - var_expand_execute_stmt
        - var_expand_state_set_transfer
        - var_expand_state_unset_transfer
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-program.c:89,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:90,10'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:92,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:92,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:92,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:92,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:92,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:92,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:92,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:96,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:96,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:96,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:96,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:96,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:96,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:96,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:100,9'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
        - Branch String:   'expansion-program.c:101,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:102,3'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
            - BranchSide:      'expansion-program.c:104,9'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
        - Branch String:   'expansion-program.c:102,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:103,14'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
            - BranchSide:      'expansion-program.c:104,9'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
        - Branch String:   'expansion-program.c:105,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:106,3'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
            - BranchSide:      'expansion-program.c:108,24'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
        - Branch String:   'expansion-program.c:106,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:107,21'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
            - BranchSide:      'expansion-program.c:108,24'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
        - Branch String:   'expansion-program.c:108,24'
          Branch Sides:
            - BranchSide:      'expansion-program.c:108,9'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
            - BranchSide:      'expansion-program.c:108,9'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
        - Branch String:   'expansion-program.c:111,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:111,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
            - BranchSide:      'expansion-program.c:111,2'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - i_panic
        - Branch String:   'expansion-program.c:111,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:111,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:114,17'
              BranchSideFuncs:
                - str_new
                - str_new
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
        - Branch String:   'expansion-program.c:120,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:121,45'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
            - BranchSide:      'expansion-program.c:157,18'
              BranchSideFuncs:
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
        - Branch String:   'expansion-program.c:122,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:124,14'
              BranchSideFuncs:
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
            - BranchSide:      'expansion-program.c:127,3'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
        - Branch String:   'expansion-program.c:128,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:129,18'
              BranchSideFuncs:
                - var_expand_execute_stmt
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
            - BranchSide:      'expansion-program.c:137,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
        - Branch String:   'expansion-program.c:130,9'
          Branch Sides:
            - BranchSide:      'expansion-program.c:132,10'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
            - BranchSide:      'expansion-program.c:135,12'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
        - Branch String:   'expansion-program.c:137,5'
          Branch Sides:
            - BranchSide:      'expansion-program.c:137,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
            - BranchSide:      'expansion-program.c:137,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
        - Branch String:   'expansion-program.c:137,5'
          Branch Sides:
            - BranchSide:      'expansion-program.c:137,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:137,5'
              BranchSideFuncs:
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - t_pop_pass_str
                - i_panic
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
        - Branch String:   'expansion-program.c:138,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:139,4'
              BranchSideFuncs:
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
            - BranchSide:      'expansion-program.c:140,13'
              BranchSideFuncs:
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - t_pop_pass_str
                - i_panic
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
        - Branch String:   'expansion-program.c:140,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:141,62'
              BranchSideFuncs:
                - binary_to_hex
                - var_expand_state_set_transfer
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - t_pop_pass_str
                - i_panic
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
            - BranchSide:      'expansion-program.c:142,13'
              BranchSideFuncs:
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - str_append_str
                - var_expand_state_unset_transfer
                - t_push
                - t_pop_pass_str
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
        - Branch String:   'expansion-program.c:142,7'
          Branch Sides:
            - BranchSide:      'expansion-program.c:143,9'
              BranchSideFuncs:
                - str_append_str
                - var_expand_state_unset_transfer
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
                - str_c
                - str_append.3377
            - BranchSide:      'expansion-program.c:150,30'
              BranchSideFuncs:
                - t_strdup
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
        - Branch String:   'expansion-program.c:143,31'
          Branch Sides:
            - BranchSide:      'expansion-program.c:143,34'
              BranchSideFuncs:
                - str_append_str
                - var_expand_state_unset_transfer
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
            - BranchSide:      'expansion-program.c:148,26'
              BranchSideFuncs:
                - str_append_str
                - var_expand_state_unset_transfer
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
        - Branch String:   'expansion-program.c:143,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:144,22'
              BranchSideFuncs:
                - str_c
                - str_append.3377
                - var_expand_state_unset_transfer
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_append_str
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
            - BranchSide:      'expansion-program.c:148,26'
              BranchSideFuncs:
                - str_append_str
                - var_expand_state_unset_transfer
                - str_free
                - p_free_internal.3380
                - str_free
                - i_panic
                - str_append_str
                - t_push
                - t_pop_pass_str
                - t_strdup
                - str_c
                - str_append.3377
                - binary_to_hex
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_execute_stmt
        - Branch String:   'expansion-program.c:160,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:161,18'
              BranchSideFuncs:
                - str_append_str
                - str_free
                - i_panic
            - BranchSide:      'expansion-program.c:162,18'
              BranchSideFuncs:
                - str_free
                - i_panic
        - Branch String:   'expansion-program.c:163,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:163,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:163,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'expansion-program.c:163,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:163,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:163,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-program.c:92,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:96,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:111,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:115,17'
          Dst:             str_new
        - Src:             'expansion-program.c:116,19'
          Dst:             str_new
        - Src:             'expansion-program.c:127,3'
          Dst:             t_push
        - Src:             'expansion-program.c:130,10'
          Dst:             var_expand_execute_stmt
        - Src:             'expansion-program.c:137,5'
          Dst:             t_pop_pass_str
        - Src:             'expansion-program.c:137,5'
          Dst:             i_panic
        - Src:             'expansion-program.c:141,42'
          Dst:             binary_to_hex
        - Src:             'expansion-program.c:141,4'
          Dst:             var_expand_state_set_transfer
        - Src:             'expansion-program.c:145,29'
          Dst:             str_c
        - Src:             'expansion-program.c:144,5'
          Dst:             str_append
        - Src:             'expansion-program.c:148,5'
          Dst:             str_append_str
        - Src:             'expansion-program.c:150,15'
          Dst:             t_strdup
        - Src:             'expansion-program.c:154,3'
          Dst:             var_expand_state_unset_transfer
        - Src:             'expansion-program.c:157,2'
          Dst:             str_free
        - Src:             'expansion-program.c:158,2'
          Dst:             p_free_internal
        - Src:             'expansion-program.c:161,3'
          Dst:             str_append_str
        - Src:             'expansion-program.c:162,2'
          Dst:             str_free
        - Src:             'expansion-program.c:163,2'
          Dst:             i_panic
    - functionName:    var_expand_program_dump
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - prog
        - dest
      BBCount:         17
      ICount:          105
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - str_printfa
        - var_expand_parameter_dump
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-program.c:62,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:63,39'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
            - BranchSide:      'expansion-program.c:80,1'
              BranchSideFuncs: []
        - Branch String:   'expansion-program.c:64,3'
          Branch Sides:
            - BranchSide:      'expansion-program.c:65,16'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
            - BranchSide:      'expansion-program.c:78,10'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
        - Branch String:   'expansion-program.c:66,28'
          Branch Sides:
            - BranchSide:      'expansion-program.c:66,32'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
            - BranchSide:      'expansion-program.c:68,16'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
        - Branch String:   'expansion-program.c:66,8'
          Branch Sides:
            - BranchSide:      'expansion-program.c:67,12'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
            - BranchSide:      'expansion-program.c:68,16'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
        - Branch String:   'expansion-program.c:71,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:73,37'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
                - var_expand_parameter_iter_more
                - str_printfa
                - var_expand_parameter_iter_init
            - BranchSide:      'expansion-program.c:76,11'
              BranchSideFuncs:
                - str_printfa
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_parameter_iter_next
                - var_expand_parameter_dump
      Callsites:
        - Src:             'expansion-program.c:68,4'
          Dst:             str_printfa
        - Src:             'expansion-program.c:70,5'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-program.c:71,11'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-program.c:73,6'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-program.c:74,5'
          Dst:             var_expand_parameter_dump
    - functionName:    var_expand_program_free
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _program
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pool_unref
      functionUses:    3
      BranchProfiles:
        - Branch String:   'expansion-program.c:177,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:178,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-program.c:179,3'
              BranchSideFuncs:
                - pool_unref.3368
      Callsites:
        - Src:             'expansion-program.c:181,2'
          Dst:             pool_unref
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3359
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3359
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    var_expand_program_create
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-program.c'
      linkageType:     externalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - program_r
        - error_r
      BBCount:         26
      ICount:          193
      EdgeCount:       29
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_idx_i
        - i_panic
        - malloc_multiply_check
        - p_malloc
        - pool_alloconly_create
        - pool_unref
        - strlen
        - t_pop_pass_str
        - t_push
        - t_strdup
        - var_expand_parser_lex_init_extra
        - var_expand_parser_parse
        - var_expand_program_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-program.c:42,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:42,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - array_append_space_i.3397
                - array_idx_i.3393
                - pool_unref.3368
                - i_panic
                - var_expand_program_free
                - i_panic
                - i_panic
            - BranchSide:      'expansion-program.c:42,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - array_append_space_i.3397
                - array_idx_i.3393
                - pool_unref.3368
                - i_panic
                - var_expand_program_free
                - i_panic
                - i_panic
        - Branch String:   'expansion-program.c:42,4'
          Branch Sides:
            - BranchSide:      'expansion-program.c:42,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:42,4'
              BranchSideFuncs:
                - array_append_space_i.3397
                - array_idx_i.3393
                - pool_unref.3368
                - i_panic
                - var_expand_program_free
                - i_panic
        - Branch String:   'expansion-program.c:46,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:46,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:47,20'
              BranchSideFuncs:
                - pool_unref.3368
                - i_panic
                - var_expand_program_free
        - Branch String:   'expansion-program.c:49,6'
          Branch Sides:
            - BranchSide:      'expansion-program.c:50,20'
              BranchSideFuncs:
                - var_expand_program_free
                - i_panic
            - BranchSide:      'expansion-program.c:53,22'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'expansion-program.c:55,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:55,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:55,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'expansion-program.c:55,2'
          Branch Sides:
            - BranchSide:      'expansion-program.c:55,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-program.c:55,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-program.c:26,3'
          Dst:             pool_alloconly_create
        - Src:             'expansion-program.c:27,26'
          Dst:             malloc_multiply_check
        - Src:             'expansion-program.c:27,26'
          Dst:             p_malloc
        - Src:             'expansion-program.c:29,2'
          Dst:             array_create_i
        - Src:             'expansion-program.c:31,2'
          Dst:             t_push
        - Src:             'expansion-program.c:34,4'
          Dst:             pool_alloconly_create
        - Src:             'expansion-program.c:35,3'
          Dst:             array_create_i
        - Src:             'expansion-program.c:37,16'
          Dst:             strlen
        - Src:             'expansion-program.c:38,3'
          Dst:             var_expand_parser_lex_init_extra
        - Src:             'expansion-program.c:40,9'
          Dst:             var_expand_parser_parse
        - Src:             'expansion-program.c:41,17'
          Dst:             t_strdup
        - Src:             'expansion-program.c:42,4'
          Dst:             t_pop_pass_str
        - Src:             'expansion-program.c:42,4'
          Dst:             i_panic
        - Src:             'expansion-program.c:44,2'
          Dst:             array_append_space_i
        - Src:             'expansion-program.c:45,27'
          Dst:             array_idx_i
        - Src:             'expansion-program.c:46,2'
          Dst:             i_panic
        - Src:             'expansion-program.c:47,2'
          Dst:             pool_unref
        - Src:             'expansion-program.c:51,3'
          Dst:             var_expand_program_free
        - Src:             'expansion-program.c:55,2'
          Dst:             i_panic
    - functionName:    lookup_table
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - context
        - name
        - result_r
        - found_r
        - error_r
      BBCount:         30
      ICount:          190
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - strcmp
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand.c:407,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:407,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:408,14'
              BranchSideFuncs:
                - t_strdup_printf
                - strcmp
                - i_panic
        - Branch String:   'var-expand.c:408,35'
          Branch Sides:
            - BranchSide:      'var-expand.c:408,38'
              BranchSideFuncs:
                - t_strdup_printf
                - strcmp
                - i_panic
            - BranchSide:      'var-expand.c:408,2'
              BranchSideFuncs:
                - t_strdup_printf
                - strcmp
                - i_panic
        - Branch String:   'var-expand.c:408,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:409,14'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - i_panic
            - BranchSide:      'var-expand.c:422,54'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'var-expand.c:409,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:410,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:420,2'
              BranchSideFuncs:
                - t_strdup_printf
                - strcmp
                - i_panic
        - Branch String:   'var-expand.c:411,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:412,15'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:417,17'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:414,5'
          Branch Sides:
            - BranchSide:      'var-expand.c:414,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:414,5'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand.c:414,5'
          Branch Sides:
            - BranchSide:      'var-expand.c:414,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:415,12'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:417,17'
          Branch Sides:
            - BranchSide:      'var-expand.c:417,6'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:417,47'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:407,2'
          Dst:             i_panic
        - Src:             'var-expand.c:409,7'
          Dst:             strcmp
        - Src:             'var-expand.c:414,5'
          Dst:             i_panic
        - Src:             'var-expand.c:422,13'
          Dst:             t_strdup_printf
    - functionName:    call_provider_table
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - prov
        - prov_context
        - prefix
        - key
        - value_r
        - found_r
        - error_r
      BBCount:         17
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - strcmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'var-expand.c:350,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:350,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:351,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'var-expand.c:351,22'
          Branch Sides:
            - BranchSide:      'var-expand.c:351,25'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand.c:351,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'var-expand.c:351,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:352,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand.c:357,3'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:352,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:353,5'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:356,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'var-expand.c:350,2'
          Dst:             i_panic
        - Src:             'var-expand.c:352,7'
          Dst:             strcmp
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_system_os
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - type
        - value_r
        - error_r
      BBCount:         13
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - i_unreached
        - t_strdup_printf
        - uname
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand.c:56,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:57,15'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'var-expand.c:66,10'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'var-expand.c:59,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:60,15'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:64,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'var-expand.c:66,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:68,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:71,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:74,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'var-expand.c:59,7'
          Dst:             uname
        - Src:             'var-expand.c:60,15'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:77,2'
          Dst:             i_unreached
    - functionName:    uname
      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:    var_expand_generate
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value_r
        - context
        - error_r
      BBCount:         35
      ICount:          171
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - guid_128_generate
        - guid_128_to_string
        - guid_128_to_uuid_string
        - guid_128_uuid4_generate
        - guid_generate
        - str_begins
        - str_begins_builtin_success
        - strcmp
        - strncmp
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:226,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:227,14'
              BranchSideFuncs:
                - guid_generate
            - BranchSide:      'var-expand.c:230,13'
              BranchSideFuncs:
                - strcmp
                - str_begins
                - t_strdup_printf
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - strncmp
                - str_begins_builtin_success.3481
                - guid_128_generate
                - guid_128_to_string
        - Branch String:   'var-expand.c:230,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:231,21'
              BranchSideFuncs:
                - guid_128_generate
                - guid_128_to_string
            - BranchSide:      'var-expand.c:235,6'
              BranchSideFuncs:
                - str_begins
                - t_strdup_printf
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - strncmp
                - str_begins_builtin_success.3481
        - Branch String:   'var-expand.c:235,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:235,6'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.3481
                - t_strdup_printf
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
            - BranchSide:      'var-expand.c:235,6'
              BranchSideFuncs:
                - str_begins
                - t_strdup_printf
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
        - Branch String:   'var-expand.c:235,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:236,27'
              BranchSideFuncs:
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
            - BranchSide:      'var-expand.c:247,2'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'var-expand.c:235,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:235,6'
              BranchSideFuncs:
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - t_strdup_printf
            - BranchSide:      'var-expand.c:235,6'
              BranchSideFuncs:
                - str_begins_builtin_success.3481
                - t_strdup_printf
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
        - Branch String:   'var-expand.c:235,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:236,27'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:247,2'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'var-expand.c:235,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:236,27'
              BranchSideFuncs:
                - guid_128_uuid4_generate
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
            - BranchSide:      'var-expand.c:247,2'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'var-expand.c:237,22'
          Branch Sides:
            - BranchSide:      'var-expand.c:237,32'
              BranchSideFuncs:
                - guid_128_to_uuid_string
            - BranchSide:      'var-expand.c:238,39'
              BranchSideFuncs:
                - guid_128_to_uuid_string
        - Branch String:   'var-expand.c:237,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:238,39'
              BranchSideFuncs:
                - guid_128_to_uuid_string
            - BranchSide:      'var-expand.c:239,19'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
                - guid_128_to_uuid_string
        - Branch String:   'var-expand.c:239,12'
          Branch Sides:
            - BranchSide:      'var-expand.c:240,39'
              BranchSideFuncs:
                - guid_128_to_uuid_string
            - BranchSide:      'var-expand.c:241,19'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - guid_128_to_uuid_string
        - Branch String:   'var-expand.c:241,12'
          Branch Sides:
            - BranchSide:      'var-expand.c:242,39'
              BranchSideFuncs:
                - guid_128_to_uuid_string
            - BranchSide:      'var-expand.c:244,4'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:226,6'
          Dst:             strcmp
        - Src:             'var-expand.c:227,14'
          Dst:             guid_generate
        - Src:             'var-expand.c:230,6'
          Dst:             strcmp
        - Src:             'var-expand.c:231,3'
          Dst:             guid_128_generate
        - Src:             'var-expand.c:232,14'
          Dst:             guid_128_to_string
        - Src:             'var-expand.c:235,6'
          Dst:             str_begins
        - Src:             'var-expand.c:235,6'
          Dst:             strncmp
        - Src:             'var-expand.c:235,6'
          Dst:             str_begins_builtin_success
        - Src:             'var-expand.c:236,3'
          Dst:             guid_128_uuid4_generate
        - Src:             'var-expand.c:237,25'
          Dst:             strcmp
        - Src:             'var-expand.c:238,15'
          Dst:             guid_128_to_uuid_string
        - Src:             'var-expand.c:239,12'
          Dst:             strcmp
        - Src:             'var-expand.c:240,15'
          Dst:             guid_128_to_uuid_string
        - Src:             'var-expand.c:241,12'
          Dst:             strcmp
        - Src:             'var-expand.c:242,15'
          Dst:             guid_128_to_uuid_string
        - Src:             'var-expand.c:244,4'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:247,2'
          Dst:             t_strdup_printf
    - functionName:    var_expand_time
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value_r
        - context
        - error_r
      BBCount:         29
      ICount:          143
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - dec2str
        - i_gettimeofday
        - i_panic
        - localtime_r
        - strcmp
        - t_strdup_printf
        - t_strftime
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:202,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:203,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:205,13'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - dec2str
                - t_strftime
                - t_strftime
                - t_strftime
        - Branch String:   'var-expand.c:205,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:206,14'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:207,18'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - dec2str
                - t_strftime
                - t_strftime
        - Branch String:   'var-expand.c:207,35'
          Branch Sides:
            - BranchSide:      'var-expand.c:208,11'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:209,14'
              BranchSideFuncs:
                - t_strftime
        - Branch String:   'var-expand.c:207,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:209,14'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:210,18'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - dec2str
                - t_strftime
        - Branch String:   'var-expand.c:210,35'
          Branch Sides:
            - BranchSide:      'var-expand.c:211,11'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:212,14'
              BranchSideFuncs:
                - t_strftime
        - Branch String:   'var-expand.c:210,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:212,14'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:213,18'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - dec2str
        - Branch String:   'var-expand.c:213,34'
          Branch Sides:
            - BranchSide:      'var-expand.c:214,11'
              BranchSideFuncs:
                - dec2str
            - BranchSide:      'var-expand.c:215,25'
              BranchSideFuncs:
                - dec2str
        - Branch String:   'var-expand.c:213,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:215,25'
              BranchSideFuncs:
                - dec2str
            - BranchSide:      'var-expand.c:217,3'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:201,2'
          Dst:             i_gettimeofday
        - Src:             'var-expand.c:202,6'
          Dst:             localtime_r
        - Src:             'var-expand.c:203,3'
          Dst:             i_panic
        - Src:             'var-expand.c:205,6'
          Dst:             strcmp
        - Src:             'var-expand.c:206,14'
          Dst:             t_strftime
        - Src:             'var-expand.c:207,11'
          Dst:             strcmp
        - Src:             'var-expand.c:208,4'
          Dst:             strcmp
        - Src:             'var-expand.c:209,14'
          Dst:             t_strftime
        - Src:             'var-expand.c:210,11'
          Dst:             strcmp
        - Src:             'var-expand.c:211,4'
          Dst:             strcmp
        - Src:             'var-expand.c:212,14'
          Dst:             t_strftime
        - Src:             'var-expand.c:213,11'
          Dst:             strcmp
        - Src:             'var-expand.c:214,4'
          Dst:             strcmp
        - Src:             'var-expand.c:215,14'
          Dst:             dec2str
        - Src:             'var-expand.c:217,3'
          Dst:             t_strdup_printf
    - functionName:    localtime_r
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_date
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value_r
        - context
        - error_r
      BBCount:         17
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_gettimeofday
        - i_panic
        - localtime_r
        - strcmp
        - t_strdup_printf
        - t_strftime
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:182,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:183,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:185,13'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - t_strftime
                - t_strftime
                - t_strftime
        - Branch String:   'var-expand.c:185,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:186,14'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:187,18'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - t_strftime
                - t_strftime
        - Branch String:   'var-expand.c:187,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:188,14'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:189,18'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - t_strftime
        - Branch String:   'var-expand.c:189,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:190,14'
              BranchSideFuncs:
                - t_strftime
            - BranchSide:      'var-expand.c:192,3'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:181,2'
          Dst:             i_gettimeofday
        - Src:             'var-expand.c:182,6'
          Dst:             localtime_r
        - Src:             'var-expand.c:183,3'
          Dst:             i_panic
        - Src:             'var-expand.c:185,6'
          Dst:             strcmp
        - Src:             'var-expand.c:186,14'
          Dst:             t_strftime
        - Src:             'var-expand.c:187,11'
          Dst:             strcmp
        - Src:             'var-expand.c:188,14'
          Dst:             t_strftime
        - Src:             'var-expand.c:189,11'
          Dst:             strcmp
        - Src:             'var-expand.c:190,14'
          Dst:             t_strftime
        - Src:             'var-expand.c:192,3'
          Dst:             t_strdup_printf
    - functionName:    var_expand_event
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value_r
        - context
        - error_r
      BBCount:         11
      ICount:          84
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - event_find_field_recursive_str
        - event_get_global
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:157,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:158,11'
              BranchSideFuncs:
                - event_get_global
                - event_find_field_recursive_str
                - t_strdup_printf
            - BranchSide:      'var-expand.c:159,6'
              BranchSideFuncs:
                - event_find_field_recursive_str
                - t_strdup_printf
        - Branch String:   'var-expand.c:159,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:160,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:164,53'
              BranchSideFuncs:
                - event_find_field_recursive_str
                - t_strdup_printf
        - Branch String:   'var-expand.c:166,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:167,61'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'var-expand.c:171,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:158,11'
          Dst:             event_get_global
        - Src:             'var-expand.c:164,22'
          Dst:             event_find_field_recursive_str
        - Src:             'var-expand.c:167,14'
          Dst:             t_strdup_printf
    - functionName:    var_expand_env
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value_r
        - context
        - error_r
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - getenv
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:136,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:137,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:141,29'
              BranchSideFuncs:
                - getenv
        - Branch String:   'var-expand.c:144,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:145,9'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:147,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:141,22'
          Dst:             getenv
    - functionName:    getenv
      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:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_dovecot
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - field
        - result_r
        - context
        - error_r
      BBCount:         18
      ICount:          98
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strcmp
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:112,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:113,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:115,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
        - Branch String:   'var-expand.c:115,13'
          Branch Sides:
            - BranchSide:      'var-expand.c:116,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:118,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
        - Branch String:   'var-expand.c:118,13'
          Branch Sides:
            - BranchSide:      'var-expand.c:119,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:121,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
        - Branch String:   'var-expand.c:121,13'
          Branch Sides:
            - BranchSide:      'var-expand.c:122,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:124,20'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:112,6'
          Dst:             strcmp
        - Src:             'var-expand.c:115,13'
          Dst:             strcmp
        - Src:             'var-expand.c:118,13'
          Dst:             strcmp
        - Src:             'var-expand.c:121,13'
          Dst:             strcmp
        - Src:             'var-expand.c:124,13'
          Dst:             strcmp
        - Src:             'var-expand.c:129,13'
          Dst:             t_strdup_printf
    - functionName:    var_expand_system
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - field
        - result_r
        - context
        - error_r
      BBCount:         19
      ICount:          118
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - cpu_count_get
        - dec2str
        - getenv
        - strcmp
        - t_strdup_printf
        - var_expand_system_os
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:84,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:86,24'
              BranchSideFuncs:
                - getenv
                - cpu_count_get
                - dec2str
            - BranchSide:      'var-expand.c:95,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_system_os
                - var_expand_system_os
        - Branch String:   'var-expand.c:87,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:88,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:91,29'
              BranchSideFuncs:
                - cpu_count_get
                - dec2str
        - Branch String:   'var-expand.c:91,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:92,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:93,23'
              BranchSideFuncs:
                - dec2str
        - Branch String:   'var-expand.c:95,13'
          Branch Sides:
            - BranchSide:      'var-expand.c:96,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:98,20'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_system_os
                - var_expand_system_os
        - Branch String:   'var-expand.c:98,13'
          Branch Sides:
            - BranchSide:      'var-expand.c:99,56'
              BranchSideFuncs:
                - var_expand_system_os
            - BranchSide:      'var-expand.c:101,18'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - var_expand_system_os
      Callsites:
        - Src:             'var-expand.c:84,6'
          Dst:             strcmp
        - Src:             'var-expand.c:86,24'
          Dst:             getenv
        - Src:             'var-expand.c:91,7'
          Dst:             cpu_count_get
        - Src:             'var-expand.c:93,15'
          Dst:             dec2str
        - Src:             'var-expand.c:95,13'
          Dst:             strcmp
        - Src:             'var-expand.c:98,13'
          Dst:             strcmp
        - Src:             'var-expand.c:99,10'
          Dst:             var_expand_system_os
        - Src:             'var-expand.c:101,11'
          Dst:             strcmp
        - Src:             'var-expand.c:102,10'
          Dst:             var_expand_system_os
        - Src:             'var-expand.c:104,13'
          Dst:             t_strdup_printf
    - functionName:    var_expand_process
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - field
        - result_r
        - context
        - error_r
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dec2str
        - getegid
        - geteuid
        - strcmp
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:35,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:36,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:37,18'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - getegid
                - dec2str
                - geteuid
                - dec2str
        - Branch String:   'var-expand.c:37,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:38,23'
              BranchSideFuncs:
                - geteuid
                - dec2str
            - BranchSide:      'var-expand.c:39,18'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - getegid
                - dec2str
        - Branch String:   'var-expand.c:39,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:40,23'
              BranchSideFuncs:
                - getegid
                - dec2str
            - BranchSide:      'var-expand.c:43,9'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'var-expand.c:35,6'
          Dst:             strcmp
        - Src:             'var-expand.c:37,11'
          Dst:             strcmp
        - Src:             'var-expand.c:38,23'
          Dst:             geteuid
        - Src:             'var-expand.c:38,15'
          Dst:             dec2str
        - Src:             'var-expand.c:39,11'
          Dst:             strcmp
        - Src:             'var-expand.c:40,23'
          Dst:             getegid
        - Src:             'var-expand.c:40,15'
          Dst:             dec2str
        - Src:             'var-expand.c:42,14'
          Dst:             t_strdup_printf
    - functionName:    geteuid
      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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getegid
      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:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    t_var_expand
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - params
        - result_r
        - error_r
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_c
        - t_str_new
        - var_expand
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:496,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:497,10'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:498,20'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'var-expand.c:494,19'
          Dst:             t_str_new
        - Src:             'var-expand.c:495,12'
          Dst:             var_expand
        - Src:             'var-expand.c:498,14'
          Dst:             str_c
    - functionName:    var_expand
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - str
        - params
        - error_r
      BBCount:         10
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - var_expand_program_create
        - var_expand_program_execute
        - var_expand_program_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:481,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:482,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:483,2'
              BranchSideFuncs:
                - var_expand_program_execute
                - var_expand_program_free
                - i_panic
        - Branch String:   'var-expand.c:483,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:483,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:484,39'
              BranchSideFuncs:
                - var_expand_program_execute
                - var_expand_program_free
      Callsites:
        - Src:             'var-expand.c:481,6'
          Dst:             var_expand_program_create
        - Src:             'var-expand.c:483,2'
          Dst:             i_panic
        - Src:             'var-expand.c:484,12'
          Dst:             var_expand_program_execute
        - Src:             'var-expand.c:485,2'
          Dst:             var_expand_program_free
    - functionName:    lookup_tables
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - name
        - result_r
        - error_r
      BBCount:         15
      ICount:          136
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - lookup_table
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:432,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:433,19'
              BranchSideFuncs:
                - t_strdup_printf
                - lookup_table
            - BranchSide:      'var-expand.c:450,22'
              BranchSideFuncs:
                - lookup_table
        - Branch String:   'var-expand.c:435,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:437,8'
              BranchSideFuncs:
                - lookup_table
                - t_strdup_printf
            - BranchSide:      'var-expand.c:446,55'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'var-expand.c:437,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:438,16'
              BranchSideFuncs:
                - lookup_table
                - t_strdup_printf
            - BranchSide:      'var-expand.c:441,10'
              BranchSideFuncs:
                - lookup_table
                - t_strdup_printf
        - Branch String:   'var-expand.c:443,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:444,12'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:445,3'
              BranchSideFuncs:
                - t_strdup_printf
                - lookup_table
      Callsites:
        - Src:             'var-expand.c:442,10'
          Dst:             lookup_table
        - Src:             'var-expand.c:446,14'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:450,9'
          Dst:             lookup_table
    - functionName:    call_value_provider
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - prefix
        - key
        - value_r
        - error_r
      BBCount:         32
      ICount:          214
      EdgeCount:       40
      CyclomaticComplexity: 10
      functionsReached:
        - call_provider_table
        - i_panic
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand.c:368,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:370,11'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
            - BranchSide:      'var-expand.c:390,7'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
        - Branch String:   'var-expand.c:370,11'
          Branch Sides:
            - BranchSide:      'var-expand.c:371,19'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - call_provider_table
            - BranchSide:      'var-expand.c:385,29'
              BranchSideFuncs:
                - call_provider_table
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
        - Branch String:   'var-expand.c:373,3'
          Branch Sides:
            - BranchSide:      'var-expand.c:375,8'
              BranchSideFuncs:
                - call_provider_table
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
            - BranchSide:      'var-expand.c:384,2'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
        - Branch String:   'var-expand.c:375,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:376,16'
              BranchSideFuncs:
                - call_provider_table
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
            - BranchSide:      'var-expand.c:379,31'
              BranchSideFuncs:
                - call_provider_table
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
        - Branch String:   'var-expand.c:381,8'
          Branch Sides:
            - BranchSide:      'var-expand.c:382,5'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
            - BranchSide:      'var-expand.c:383,3'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - call_provider_table
        - Branch String:   'var-expand.c:390,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:391,57'
              BranchSideFuncs:
                - i_panic
                - t_strdup_printf
            - BranchSide:      'var-expand.c:393,13'
              BranchSideFuncs:
                - i_panic
                - t_strdup_printf
        - Branch String:   'var-expand.c:398,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:398,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:398,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand.c:398,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:398,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:398,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:366,12'
          Dst:             call_provider_table
        - Src:             'var-expand.c:379,10'
          Dst:             call_provider_table
        - Src:             'var-expand.c:385,9'
          Dst:             call_provider_table
        - Src:             'var-expand.c:391,14'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:395,14'
          Dst:             t_strdup_printf
        - Src:             'var-expand.c:398,2'
          Dst:             i_panic
    - functionName:    var_expand_state_lookup_variable
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - name
        - result_r
        - error_r
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - call_value_provider
        - lookup_tables
        - strchr
        - t_strdup_until
      functionUses:    5
      BranchProfiles:
        - Branch String:   'var-expand.c:461,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:462,10'
              BranchSideFuncs:
                - lookup_tables
                - call_value_provider
            - BranchSide:      'var-expand.c:465,27'
              BranchSideFuncs:
                - t_strdup_until
                - lookup_tables
                - call_value_provider
        - Branch String:   'var-expand.c:469,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:470,30'
              BranchSideFuncs:
                - call_value_provider
            - BranchSide:      'var-expand.c:472,24'
              BranchSideFuncs:
                - lookup_tables
      Callsites:
        - Src:             'var-expand.c:459,9'
          Dst:             strchr
        - Src:             'var-expand.c:465,12'
          Dst:             t_strdup_until
        - Src:             'var-expand.c:470,10'
          Dst:             call_value_provider
        - Src:             'var-expand.c:472,10'
          Dst:             lookup_tables
    - functionName:    var_expand_state_unset_transfer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_truncate
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:340,2'
          Dst:             str_truncate
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    var_expand_state_set_transfer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - value
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - var_expand_state_set_transfer_data
      functionUses:    15
      BranchProfiles:
        - Branch String:   'var-expand.c:330,6'
          Branch Sides:
            - BranchSide:      'var-expand.c:331,7'
              BranchSideFuncs:
                - var_expand_state_set_transfer_data
            - BranchSide:      'var-expand.c:333,16'
              BranchSideFuncs:
                - strlen
                - var_expand_state_set_transfer_data
      Callsites:
        - Src:             'var-expand.c:333,9'
          Dst:             strlen
        - Src:             'var-expand.c:334,2'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    var_expand_state_set_transfer_data
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - state
        - value
        - len
      BBCount:         10
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - str_append_data
        - str_truncate
      functionUses:    10
      BranchProfiles:
        - Branch String:   'var-expand.c:312,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:312,2'
              BranchSideFuncs:
                - str_truncate.3546
                - str_append_data.3550
                - i_panic
            - BranchSide:      'var-expand.c:312,2'
              BranchSideFuncs:
                - str_truncate.3546
                - str_append_data.3550
                - i_panic
        - Branch String:   'var-expand.c:312,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:312,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand.c:312,2'
              BranchSideFuncs:
                - str_truncate.3546
                - str_append_data.3550
      Callsites:
        - Src:             'var-expand.c:312,2'
          Dst:             i_panic
        - Src:             'var-expand.c:315,2'
          Dst:             str_truncate
        - Src:             'var-expand.c:316,2'
          Dst:             str_append_data
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    var_expand_state_set_transfer_binary
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - state
        - value
        - len
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - var_expand_state_set_transfer_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:323,2'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    var_expand_table_key_cmp
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - elem
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand.c:273,9'
          Dst:             strcmp
    - functionName:    array_lsearch_modifiable_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - key
        - cmp
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_lsearch_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:434,17'
          Dst:             array_lsearch_i
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3480
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.3480
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    var_expand_table_size
      functionSourceFile: '/src/dovecot/src/lib-var-expand/./var-expand.h'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         7
      ICount:          41
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './var-expand.h:109,23'
          Branch Sides:
            - BranchSide:      './var-expand.h:109,26'
              BranchSideFuncs: []
            - BranchSide:      './var-expand.h:109,2'
              BranchSideFuncs: []
        - Branch String:   './var-expand.h:109,2'
          Branch Sides:
            - BranchSide:      './var-expand.h:110,5'
              BranchSideFuncs: []
            - BranchSide:      './var-expand.h:111,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    var_expand_merge_tables
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - a
        - b
      BBCount:         13
      ICount:          146
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_idx_modifiable_i
        - array_lsearch_modifiable_i
        - p_strdup
        - var_expand_table_key_cmp
        - var_expand_table_size
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:284,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:286,4'
              BranchSideFuncs:
                - array_append_space_i.3551
                - p_strdup
                - p_strdup
                - array_append_space_i.3551
                - array_idx_modifiable_i
                - array_lsearch_modifiable_i
                - array_append_space_i.3551
                - p_strdup
                - p_strdup
            - BranchSide:      'var-expand.c:290,14'
              BranchSideFuncs:
                - array_append_space_i.3551
                - array_idx_modifiable_i
                - array_lsearch_modifiable_i
                - array_append_space_i.3551
                - p_strdup
                - p_strdup
        - Branch String:   'var-expand.c:290,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:293,4'
              BranchSideFuncs:
                - array_lsearch_modifiable_i
                - array_append_space_i.3551
                - p_strdup
                - p_strdup
                - array_append_space_i.3551
                - array_idx_modifiable_i
            - BranchSide:      'var-expand.c:304,2'
              BranchSideFuncs:
                - array_append_space_i.3551
                - array_idx_modifiable_i
        - Branch String:   'var-expand.c:295,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:296,19'
              BranchSideFuncs:
                - array_append_space_i.3551
                - array_idx_modifiable_i
                - array_lsearch_modifiable_i
                - array_append_space_i.3551
                - p_strdup
                - p_strdup
            - BranchSide:      'var-expand.c:300,11'
              BranchSideFuncs:
                - array_append_space_i.3551
                - p_strdup
                - p_strdup
                - array_append_space_i.3551
                - array_idx_modifiable_i
                - array_lsearch_modifiable_i
      Callsites:
        - Src:             'var-expand.c:281,18'
          Dst:             var_expand_table_size
        - Src:             'var-expand.c:282,18'
          Dst:             var_expand_table_size
        - Src:             'var-expand.c:283,2'
          Dst:             array_create_i
        - Src:             'var-expand.c:286,4'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:287,18'
          Dst:             p_strdup
        - Src:             'var-expand.c:288,16'
          Dst:             p_strdup
        - Src:             'var-expand.c:293,4'
          Dst:             array_lsearch_modifiable_i
        - Src:             'var-expand.c:293,4'
          Dst:             var_expand_table_key_cmp
        - Src:             'var-expand.c:300,11'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:301,18'
          Dst:             p_strdup
        - Src:             'var-expand.c:302,16'
          Dst:             p_strdup
        - Src:             'var-expand.c:304,2'
          Dst:             array_append_space_i
        - Src:             'var-expand.c:305,9'
          Dst:             array_idx_modifiable_i
    - functionName:    var_expand_provider_is_builtin
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand.c'
      linkageType:     externalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
      BBCount:         10
      ICount:          53
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand.c:264,2'
          Branch Sides:
            - BranchSide:      'var-expand.c:265,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'var-expand.c:267,2'
              BranchSideFuncs: []
        - Branch String:   'var-expand.c:265,7'
          Branch Sides:
            - BranchSide:      'var-expand.c:265,52'
              BranchSideFuncs: []
            - BranchSide:      'var-expand.c:266,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand.c:265,7'
          Dst:             strcmp
    - functionName:    yystpcpy
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1152
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yydest
        - yysrc
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-parser.c:1156,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1157,5'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.c:1159,10'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    yytnamerr
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1212
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyres
        - yystr
      BBCount:         28
      ICount:          143
      EdgeCount:       32
      CyclomaticComplexity: 6
      functionsReached:
        - strlen
        - yystpcpy
      functionUses:    3
      BranchProfiles:
        - Branch String:   'var-expand-parser.c:1175,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1177,19'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1208,7'
              BranchSideFuncs:
                - strlen
                - yystpcpy
        - Branch String:   'var-expand-parser.c:1181,9'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1185,13'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1185,13'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1188,18'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1195,17'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1201,17'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1188,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1189,15'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1191,15'
              BranchSideFuncs:
                - strlen
                - yystpcpy
        - Branch String:   'var-expand-parser.c:1195,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1196,29'
              BranchSideFuncs:
                - strlen
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1197,16'
              BranchSideFuncs:
                - strlen
                - yystpcpy
        - Branch String:   'var-expand-parser.c:1201,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1202,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.c:1203,20'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1208,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1209,22'
              BranchSideFuncs:
                - yystpcpy
            - BranchSide:      'var-expand-parser.c:1211,12'
              BranchSideFuncs:
                - strlen
      Callsites:
        - Src:             'var-expand-parser.c:1209,12'
          Dst:             yystpcpy
        - Src:             'var-expand-parser.c:1211,12'
          Dst:             strlen
    - functionName:    make_new_program
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pstate
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-parser.y:178,3'
          Dst:             malloc_multiply_check
        - Src:             'var-expand-parser.y:178,3'
          Dst:             p_malloc
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    link_argument
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - par
      BBCount:         58
      ICount:          326
      EdgeCount:       76
      CyclomaticComplexity: 20
      functionsReached:
        - i_panic
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand-parser.y:83,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:84,19'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:88,37'
              BranchSideFuncs:
                - i_panic
                - strcmp
                - strcmp
        - Branch String:   'var-expand-parser.y:91,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:93,3'
              BranchSideFuncs:
                - i_panic
                - strcmp
            - BranchSide:      'var-expand-parser.y:99,3'
              BranchSideFuncs:
                - i_panic
                - strcmp
                - strcmp
        - Branch String:   'var-expand-parser.y:93,22'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:93,25'
              BranchSideFuncs:
                - i_panic
                - strcmp
            - BranchSide:      'var-expand-parser.y:93,3'
              BranchSideFuncs:
                - i_panic
                - strcmp
        - Branch String:   'var-expand-parser.y:93,39'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:93,42'
              BranchSideFuncs:
                - i_panic
                - strcmp
            - BranchSide:      'var-expand-parser.y:93,3'
              BranchSideFuncs:
                - i_panic
                - strcmp
        - Branch String:   'var-expand-parser.y:93,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:94,11'
              BranchSideFuncs:
                - i_panic
                - strcmp
            - BranchSide:      'var-expand-parser.y:97,2'
              BranchSideFuncs:
                - i_panic
                - strcmp
        - Branch String:   'var-expand-parser.y:99,22'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:99,26'
              BranchSideFuncs:
                - strcmp
                - i_panic
                - strcmp
            - BranchSide:      'var-expand-parser.y:99,3'
              BranchSideFuncs:
                - i_panic
                - strcmp
                - strcmp
        - Branch String:   'var-expand-parser.y:99,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:0,0'
              BranchSideFuncs:
                - i_panic
                - strcmp
                - strcmp
            - BranchSide:      'var-expand-parser.y:101,11'
              BranchSideFuncs:
                - i_panic
                - strcmp
                - strcmp
        - Branch String:   'var-expand-parser.y:107,18'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:107,21'
              BranchSideFuncs:
                - i_panic
                - strcmp
            - BranchSide:      'var-expand-parser.y:117,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand-parser.y:107,36'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:107,46'
              BranchSideFuncs:
                - strcmp
                - i_panic
            - BranchSide:      'var-expand-parser.y:117,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand-parser.y:107,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:108,7'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:117,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'var-expand-parser.y:108,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:110,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:114,16'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:117,13'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:119,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand-parser.y:121,14'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:119,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:119,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'var-expand-parser.y:120,16'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:121,29'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:121,32'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:122,14'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:121,47'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:122,14'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:123,7'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:122,28'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:122,31'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:134,15'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:121,13'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:123,7'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:134,15'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:123,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:125,16'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:129,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-parser.y:100,12'
          Dst:             strcmp
        - Src:             'var-expand-parser.y:107,39'
          Dst:             strcmp
        - Src:             'var-expand-parser.y:119,3'
          Dst:             i_panic
    - functionName:    register_variable
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - state
        - name
        - maybe_func
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_i
        - array_bsearch_i
        - array_sort_i
        - i_strcmp_p
        - str_array_find
      functionUses:    3
      BranchProfiles:
        - Branch String:   'var-expand-parser.y:69,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:69,53'
              BranchSideFuncs:
                - str_array_find
                - array_bsearch_i
                - array_append_i.3597
                - array_sort_i
            - BranchSide:      'var-expand-parser.y:73,6'
              BranchSideFuncs:
                - array_bsearch_i
                - array_append_i.3597
                - array_sort_i
        - Branch String:   'var-expand-parser.y:69,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:70,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:73,6'
              BranchSideFuncs:
                - array_bsearch_i
                - array_append_i.3597
                - array_sort_i
        - Branch String:   'var-expand-parser.y:73,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:74,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:75,2'
              BranchSideFuncs:
                - array_append_i.3597
                - array_sort_i
      Callsites:
        - Src:             'var-expand-parser.y:69,20'
          Dst:             str_array_find
        - Src:             'var-expand-parser.y:73,6'
          Dst:             array_bsearch_i
        - Src:             'var-expand-parser.y:73,6'
          Dst:             i_strcmp_p
        - Src:             'var-expand-parser.y:75,2'
          Dst:             array_append_i
        - Src:             'var-expand-parser.y:76,2'
          Dst:             array_sort_i
        - Src:             'var-expand-parser.y:76,2'
          Dst:             i_strcmp_p
    - functionName:    yydestruct
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1364
      functionLinenumberEnd: 1375
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yymsg
        - yytype
        - yyvaluep
        - yylocationp
        - state
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'var-expand-parser.c:1368,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1368,7'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.c:1369,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    yysyntax_error
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1355
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - yymsg_alloc
        - yymsg
        - yyssp
        - yytoken
      BBCount:         68
      ICount:          416
      EdgeCount:       86
      CyclomaticComplexity: 20
      functionsReached:
        - strlen
        - yytnamerr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand-parser.c:1261,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1263,26'
              BranchSideFuncs:
                - yytnamerr
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1301,11'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1267,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1272,26'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1299,5'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1272,26'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1272,37'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1272,15'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1275,24'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1275,49'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1275,15'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1278,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1279,25'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1298,9'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1279,43'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1279,46'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1280,21'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1279,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1280,21'
              BranchSideFuncs:
                - yytnamerr
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1282,21'
              BranchSideFuncs:
                - yytnamerr
                - strlen
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1282,21'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1284,29'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1288,44'
              BranchSideFuncs:
                - yytnamerr
                - strlen
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1292,41'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1292,44'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1295,21'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1292,23'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1293,30'
              BranchSideFuncs:
                - strlen
                - yytnamerr
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1295,21'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1301,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1302,5'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1308,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1309,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1310,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1311,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1312,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1313,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1321,27'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1321,30'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1324,7'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1321,9'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1322,16'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1324,7'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1327,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1329,26'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.c:1340,18'
              BranchSideFuncs:
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1331,14'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1331,18'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.c:1332,10'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1330,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1332,10'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.c:1333,7'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1342,5'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1343,12'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1354,3'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.c:1343,23'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1343,26'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1350,11'
              BranchSideFuncs:
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1343,45'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1343,48'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1350,11'
              BranchSideFuncs:
                - yytnamerr
        - Branch String:   'var-expand-parser.c:1343,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1345,29'
              BranchSideFuncs:
                - yytnamerr
            - BranchSide:      'var-expand-parser.c:1350,11'
              BranchSideFuncs:
                - yytnamerr
      Callsites:
        - Src:             'var-expand-parser.c:1264,29'
          Dst:             yytnamerr
        - Src:             'var-expand-parser.c:1291,32'
          Dst:             yytnamerr
        - Src:             'var-expand-parser.c:1320,37'
          Dst:             strlen
        - Src:             'var-expand-parser.c:1345,18'
          Dst:             yytnamerr
    - functionName:    push_named_argument
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - name
        - type
        - value
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - link_argument
        - malloc_multiply_check
        - p_malloc
        - p_strdup
        - register_variable
        - t_str_lcase
      functionUses:    3
      BranchProfiles:
        - Branch String:   'var-expand-parser.y:151,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:152,29'
              BranchSideFuncs:
                - p_strdup
                - link_argument
                - register_variable
            - BranchSide:      'var-expand-parser.y:153,6'
              BranchSideFuncs:
                - link_argument
                - register_variable
        - Branch String:   'var-expand-parser.y:153,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:153,6'
              BranchSideFuncs:
                - register_variable
                - link_argument
            - BranchSide:      'var-expand-parser.y:154,21'
              BranchSideFuncs:
                - register_variable
                - link_argument
      Callsites:
        - Src:             'var-expand-parser.y:145,3'
          Dst:             malloc_multiply_check
        - Src:             'var-expand-parser.y:145,3'
          Dst:             p_malloc
        - Src:             'var-expand-parser.y:148,42'
          Dst:             t_str_lcase
        - Src:             'var-expand-parser.y:148,13'
          Dst:             p_strdup
        - Src:             'var-expand-parser.y:152,20'
          Dst:             p_strdup
        - Src:             'var-expand-parser.y:154,3'
          Dst:             register_variable
        - Src:             'var-expand-parser.y:155,2'
          Dst:             link_argument
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - cstr
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:72,32'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:72,2'
          Dst:             buffer_insert
    - functionName:    push_function
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - func
      BBCount:         15
      ICount:          124
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - make_new_program
        - malloc_multiply_check
        - p_malloc
        - register_variable
      functionUses:    5
      BranchProfiles:
        - Branch String:   'var-expand-parser.y:186,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:187,20'
              BranchSideFuncs:
                - make_new_program
                - malloc_multiply_check.3593
                - p_malloc.3594
                - register_variable
            - BranchSide:      'var-expand-parser.y:189,3'
              BranchSideFuncs:
                - malloc_multiply_check.3593
                - p_malloc.3594
                - register_variable
        - Branch String:   'var-expand-parser.y:191,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:192,21'
              BranchSideFuncs:
                - register_variable
            - BranchSide:      'var-expand-parser.y:193,14'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:194,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:195,21'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:197,38'
              BranchSideFuncs: []
        - Branch String:   'var-expand-parser.y:198,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:199,10'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:200,15'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-parser.y:187,3'
          Dst:             make_new_program
        - Src:             'var-expand-parser.y:189,3'
          Dst:             malloc_multiply_check
        - Src:             'var-expand-parser.y:189,3'
          Dst:             p_malloc
        - Src:             'var-expand-parser.y:192,3'
          Dst:             register_variable
    - functionName:    push_argument
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - type
        - value
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - link_argument
        - malloc_multiply_check
        - p_malloc
        - p_strdup
        - register_variable
      functionUses:    9
      BranchProfiles:
        - Branch String:   'var-expand-parser.y:168,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:169,29'
              BranchSideFuncs:
                - p_strdup
                - link_argument
                - register_variable
            - BranchSide:      'var-expand-parser.y:170,6'
              BranchSideFuncs:
                - link_argument
                - register_variable
        - Branch String:   'var-expand-parser.y:170,6'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:170,6'
              BranchSideFuncs:
                - register_variable
                - link_argument
            - BranchSide:      'var-expand-parser.y:171,21'
              BranchSideFuncs:
                - register_variable
                - link_argument
      Callsites:
        - Src:             'var-expand-parser.y:164,3'
          Dst:             malloc_multiply_check
        - Src:             'var-expand-parser.y:164,3'
          Dst:             p_malloc
        - Src:             'var-expand-parser.y:169,20'
          Dst:             p_strdup
        - Src:             'var-expand-parser.y:171,3'
          Dst:             register_variable
        - Src:             'var-expand-parser.y:172,2'
          Dst:             link_argument
    - functionName:    push_new_program
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pstate
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_parse
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1386
      functionLinenumberEnd: 2055
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
      BBCount:         181
      ICount:          1428
      EdgeCount:       228
      CyclomaticComplexity: 49
      functionsReached:
        - p_strdup
        - push_argument
        - push_function
        - push_named_argument
        - push_new_program
        - str_c
        - str_insert
        - str_to_intmax
        - var_expand_parser_error
        - var_expand_parser_lex
        - yydestruct
        - yysyntax_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-parser.c:1496,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1502,28'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - free
            - BranchSide:      'var-expand-parser.c:1564,7'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - free
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
        - Branch String:   'var-expand-parser.c:1528,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1529,9'
              BranchSideFuncs:
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1530,19'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - free
        - Branch String:   'var-expand-parser.c:1531,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1532,21'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - free
            - BranchSide:      'var-expand-parser.c:1535,29'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - free
        - Branch String:   'var-expand-parser.c:1539,13'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1540,11'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - free
            - BranchSide:      'var-expand-parser.c:1541,9'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - free
        - Branch String:   'var-expand-parser.c:1545,13'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1546,25'
              BranchSideFuncs:
                - free
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
            - BranchSide:      'var-expand-parser.c:1550,15'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - free
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
        - Branch String:   'var-expand-parser.c:1559,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1560,9'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1561,5'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
                - free
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
        - Branch String:   'var-expand-parser.c:1564,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1565,5'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1567,3'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - var_expand_parser_error
                - free
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
        - Branch String:   'var-expand-parser.c:1579,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1580,5'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - var_expand_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - var_expand_parser_error
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1585,7'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
                - var_expand_parser_lex
        - Branch String:   'var-expand-parser.c:1585,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1588,41'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1591,7'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1591,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1593,24'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1598,17'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1598,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1598,17'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1598,15'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1598,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1598,15'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1598,15'
              BranchSideFuncs:
                - var_expand_parser_lex
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1605,15'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1605,27'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - var_expand_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - var_expand_parser_error
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1606,5'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - var_expand_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - var_expand_parser_error
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'var-expand-parser.c:1605,31'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1605,42'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - var_expand_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - var_expand_parser_error
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1606,5'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - var_expand_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - var_expand_parser_error
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'var-expand-parser.c:1605,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1606,5'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - var_expand_parser_lex
                - free
                - free
                - yydestruct
                - yydestruct
                - malloc
                - var_expand_parser_error
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1607,17'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1608,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1612,14'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
            - BranchSide:      'var-expand-parser.c:1618,7'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1618,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1619,16'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1623,13'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1639,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1640,5'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1641,3'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
        - Branch String:   'var-expand-parser.c:1662,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1662,3'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
            - BranchSide:      'var-expand-parser.c:1662,3'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
        - Branch String:   'var-expand-parser.c:1665,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:232,64'
              BranchSideFuncs:
                - push_new_program
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:235,21'
              BranchSideFuncs:
                - str_c
                - push_argument
                - push_function
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:237,20'
              BranchSideFuncs:
                - push_argument
                - push_function
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:238,21'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:254,25'
              BranchSideFuncs:
                - push_argument
                - push_argument
                - push_function
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:255,23'
              BranchSideFuncs:
                - push_argument
                - str_c
                - push_argument
                - push_function
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:258,36'
              BranchSideFuncs:
                - str_insert.3647
                - str_c
                - str_to_intmax
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - var_expand_parser_error
            - BranchSide:      'var-expand-parser.y:259,43'
              BranchSideFuncs:
                - str_c
                - str_to_intmax
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - var_expand_parser_error
            - BranchSide:      'var-expand-parser.y:262,25'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:263,26'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:264,25'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:265,26'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:266,25'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:269,44'
              BranchSideFuncs:
                - push_function
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:272,47'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:273,19'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:284,20'
              BranchSideFuncs:
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:285,19'
              BranchSideFuncs:
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:286,21'
              BranchSideFuncs:
                - push_argument
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:287,28'
              BranchSideFuncs:
                - push_named_argument
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:288,26'
              BranchSideFuncs:
                - str_c
                - push_named_argument
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:289,27'
              BranchSideFuncs:
                - str_c
                - push_named_argument
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:290,20'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.y:293,37'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.y:294,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-parser.c:1820,16'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.y:258,64'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:258,143'
              BranchSideFuncs:
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1707,5'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.y:259,22'
          Branch Sides:
            - BranchSide:      'var-expand-parser.y:259,101'
              BranchSideFuncs:
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1713,5'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1848,25'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1848,28'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1850,28'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1848,42'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1848,53'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1850,28'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1848,16'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1849,26'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1850,28'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1862,13'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1862,11'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1862,43'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'var-expand-parser.c:1862,43'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1862,43'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1862,13'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'var-expand-parser.c:1862,43'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1862,13'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
            - BranchSide:      'var-expand-parser.c:1862,13'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'var-expand-parser.c:1865,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1867,7'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1904,3'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - yydestruct
        - Branch String:   'var-expand-parser.c:1877,13'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1878,20'
              BranchSideFuncs:
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1879,18'
              BranchSideFuncs:
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - malloc
                - yysyntax_error
                - free
        - Branch String:   'var-expand-parser.c:1881,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1882,29'
              BranchSideFuncs:
                - free
                - malloc
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - yysyntax_error
            - BranchSide:      'var-expand-parser.c:1883,21'
              BranchSideFuncs:
                - malloc
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
                - yysyntax_error
        - Branch String:   'var-expand-parser.c:1884,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1886,25'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - malloc
                - free
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1892,41'
              BranchSideFuncs:
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - malloc
                - free
                - var_expand_parser_lex
                - malloc
                - var_expand_parser_error
                - free
                - yydestruct
        - Branch String:   'var-expand-parser.c:1897,13'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1898,11'
              BranchSideFuncs:
                - var_expand_parser_error
                - free
                - free
                - yydestruct
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1902,5'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
                - yydestruct
        - Branch String:   'var-expand-parser.c:1906,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1911,11'
              BranchSideFuncs:
                - yydestruct
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1927,3'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1911,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1914,15'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1920,23'
              BranchSideFuncs:
                - yydestruct
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1914,15'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1915,13'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1916,9'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1957,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1959,15'
              BranchSideFuncs:
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1969,11'
              BranchSideFuncs:
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1960,24'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1960,27'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1966,9'
              BranchSideFuncs:
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1960,41'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1960,52'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1966,9'
              BranchSideFuncs:
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1960,15'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1962,29'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1966,9'
              BranchSideFuncs:
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1963,19'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1964,17'
              BranchSideFuncs:
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
            - BranchSide:      'var-expand-parser.c:1965,13'
              BranchSideFuncs:
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:1969,11'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:1970,9'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
                - yydestruct
            - BranchSide:      'var-expand-parser.c:1972,7'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
                - yydestruct
                - str_c
                - p_strdup
                - str_c
                - push_named_argument
                - str_c
                - push_named_argument
                - push_named_argument
                - push_argument
                - str_c
                - push_argument
                - str_c
                - push_argument
                - str_c
                - p_strdup
                - push_function
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - str_insert.3647
                - str_c
                - str_to_intmax
                - var_expand_parser_error
                - push_argument
                - str_c
                - push_argument
                - push_function
                - push_argument
                - push_argument
                - push_function
                - push_argument
                - push_function
                - str_c
                - push_argument
                - push_function
                - push_new_program
                - yysyntax_error
                - var_expand_parser_error
                - yydestruct
                - var_expand_parser_error
                - malloc
                - yysyntax_error
                - free
                - var_expand_parser_lex
                - malloc
                - free
        - Branch String:   'var-expand-parser.c:2028,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:2032,17'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
            - BranchSide:      'var-expand-parser.c:2038,3'
              BranchSideFuncs:
                - free
                - free
                - yydestruct
        - Branch String:   'var-expand-parser.c:2032,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:2032,17'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
            - BranchSide:      'var-expand-parser.c:2032,15'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
        - Branch String:   'var-expand-parser.c:2032,17'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:2032,15'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
            - BranchSide:      'var-expand-parser.c:2032,15'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
                - yydestruct
        - Branch String:   'var-expand-parser.c:2040,3'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:2043,28'
              BranchSideFuncs:
                - yydestruct
                - free
                - free
            - BranchSide:      'var-expand-parser.c:2047,7'
              BranchSideFuncs:
                - free
                - free
        - Branch String:   'var-expand-parser.c:2047,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:2048,19'
              BranchSideFuncs:
                - free
                - free
            - BranchSide:      'var-expand-parser.c:2051,7'
              BranchSideFuncs:
                - free
        - Branch String:   'var-expand-parser.c:2051,7'
          Branch Sides:
            - BranchSide:      'var-expand-parser.c:2052,19'
              BranchSideFuncs:
                - free
            - BranchSide:      'var-expand-parser.c:2054,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-parser.c:1588,16'
          Dst:             var_expand_parser_lex
        - Src:             'var-expand-parser.y:232,47'
          Dst:             push_new_program
        - Src:             'var-expand-parser.y:235,57'
          Dst:             str_c
        - Src:             'var-expand-parser.y:235,80'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:235,154'
          Dst:             push_function
        - Src:             'var-expand-parser.y:237,61'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:237,135'
          Dst:             push_function
        - Src:             'var-expand-parser.y:254,79'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:254,205'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:254,276'
          Dst:             push_function
        - Src:             'var-expand-parser.y:255,77'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:255,184'
          Dst:             str_c
        - Src:             'var-expand-parser.y:255,207'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:255,283'
          Dst:             push_function
        - Src:             'var-expand-parser.y:258,24'
          Dst:             str_insert
        - Src:             'var-expand-parser.y:258,78'
          Dst:             str_c
        - Src:             'var-expand-parser.y:258,64'
          Dst:             str_to_intmax
        - Src:             'var-expand-parser.y:258,125'
          Dst:             var_expand_parser_error
        - Src:             'var-expand-parser.y:259,36'
          Dst:             str_c
        - Src:             'var-expand-parser.y:259,22'
          Dst:             str_to_intmax
        - Src:             'var-expand-parser.y:259,83'
          Dst:             var_expand_parser_error
        - Src:             'var-expand-parser.y:269,30'
          Dst:             push_function
        - Src:             'var-expand-parser.y:272,67'
          Dst:             str_c
        - Src:             'var-expand-parser.y:272,38'
          Dst:             p_strdup
        - Src:             'var-expand-parser.y:284,56'
          Dst:             str_c
        - Src:             'var-expand-parser.y:284,79'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:285,55'
          Dst:             str_c
        - Src:             'var-expand-parser.y:285,78'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:286,76'
          Dst:             push_argument
        - Src:             'var-expand-parser.y:287,83'
          Dst:             push_named_argument
        - Src:             'var-expand-parser.y:288,62'
          Dst:             str_c
        - Src:             'var-expand-parser.y:288,85'
          Dst:             push_named_argument
        - Src:             'var-expand-parser.y:289,63'
          Dst:             str_c
        - Src:             'var-expand-parser.y:289,86'
          Dst:             push_named_argument
        - Src:             'var-expand-parser.y:293,57'
          Dst:             str_c
        - Src:             'var-expand-parser.y:293,28'
          Dst:             p_strdup
        - Src:             'var-expand-parser.c:1876,33'
          Dst:             yysyntax_error
        - Src:             'var-expand-parser.c:1892,41'
          Dst:             yysyntax_error
        - Src:             'var-expand-parser.c:1896,9'
          Dst:             var_expand_parser_error
        - Src:             'var-expand-parser.c:1919,11'
          Dst:             yydestruct
        - Src:             'var-expand-parser.c:1973,7'
          Dst:             yydestruct
        - Src:             'var-expand-parser.c:2018,3'
          Dst:             var_expand_parser_error
        - Src:             'var-expand-parser.c:2033,7'
          Dst:             yydestruct
        - Src:             'var-expand-parser.c:2042,7'
          Dst:             yydestruct
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/lib.h:75,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/lib.h:75,2'
          Dst:             i_panic
    - functionName:    input_proc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf
        - size
        - scanner
      BBCount:         6
      ICount:          95
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_memcpy
        - var_expand_parser_get_extra
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.l:181,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:182,3'
              BranchSideFuncs:
                - i_memcpy.3771
            - BranchSide:      'var-expand-lexer.l:187,3'
              BranchSideFuncs:
                - i_memcpy.3771
      Callsites:
        - Src:             'var-expand-lexer.l:179,19'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:182,3'
          Dst:             i_memcpy
        - Src:             'var-expand-lexer.l:187,3'
          Dst:             i_memcpy
    - functionName:    var_expand_parser_get_extra
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2169
      functionLinenumberEnd: 2171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_realloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         11
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:129,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:129,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:131,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:133,6'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/mempool.h:133,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:134,10'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:136,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:130,3'
          Dst:             i_panic
    - functionName:    var_expand_parser_realloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr
        - bytes
        - yyscanner
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_realloc
        - var_expand_parser_get_extra
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-lexer.l:154,19'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:155,9'
          Dst:             p_realloc
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/mempool.h:118,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/mempool.h:119,3'
          Dst:             i_panic
    - functionName:    var_expand_parser_error
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - loc
        - state
        - error
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-lexer.l:135,17'
          Dst:             p_strdup
    - functionName:    var_expand_parser_lex_destroy
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2428
      functionLinenumberEnd: 2453
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         12
      ICount:          103
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - var_expand_parser__delete_buffer
        - var_expand_parser_free
        - var_expand_parser_pop_buffer_state
        - yy_init_globals
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2432,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2432,2'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
                - yy_init_globals
                - var_expand_parser_free
                - var_expand_parser__delete_buffer
                - var_expand_parser_pop_buffer_state
            - BranchSide:      'var-expand-lexer.c:2432,2'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
                - yy_init_globals
                - var_expand_parser_free
                - var_expand_parser__delete_buffer
                - var_expand_parser_pop_buffer_state
        - Branch String:   'var-expand-lexer.c:2432,2'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2433,21'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser_pop_buffer_state
                - var_expand_parser_free
                - var_expand_parser_free
                - yy_init_globals
                - var_expand_parser_free
            - BranchSide:      'var-expand-lexer.c:2439,9'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
                - yy_init_globals
                - var_expand_parser_free
        - Branch String:   'var-expand-lexer.c:2433,21'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2433,41'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser_pop_buffer_state
                - var_expand_parser_free
                - var_expand_parser_free
                - yy_init_globals
                - var_expand_parser_free
            - BranchSide:      'var-expand-lexer.c:2433,41'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser_pop_buffer_state
                - var_expand_parser_free
                - var_expand_parser_free
                - yy_init_globals
                - var_expand_parser_free
      Callsites:
        - Src:             'var-expand-lexer.c:2433,3'
          Dst:             var_expand_parser__delete_buffer
        - Src:             'var-expand-lexer.c:2435,3'
          Dst:             var_expand_parser_pop_buffer_state
        - Src:             'var-expand-lexer.c:2439,2'
          Dst:             var_expand_parser_free
        - Src:             'var-expand-lexer.c:2443,9'
          Dst:             var_expand_parser_free
        - Src:             'var-expand-lexer.c:2448,5'
          Dst:             yy_init_globals
        - Src:             'var-expand-lexer.c:2451,5'
          Dst:             var_expand_parser_free
    - functionName:    var_expand_parser__delete_buffer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1834
      functionLinenumberEnd: 1847
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - b
        - yyscanner
      BBCount:         15
      ICount:          92
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - var_expand_parser_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1837,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1838,3'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
            - BranchSide:      'var-expand-lexer.c:1840,7'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
        - Branch String:   'var-expand-lexer.c:1840,12'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1840,9'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
            - BranchSide:      'var-expand-lexer.c:1840,9'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
        - Branch String:   'var-expand-lexer.c:1840,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1841,3'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
            - BranchSide:      'var-expand-lexer.c:1843,7'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
        - Branch String:   'var-expand-lexer.c:1843,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1844,20'
              BranchSideFuncs:
                - var_expand_parser_free
                - var_expand_parser_free
            - BranchSide:      'var-expand-lexer.c:1846,19'
              BranchSideFuncs:
                - var_expand_parser_free
      Callsites:
        - Src:             'var-expand-lexer.c:1844,3'
          Dst:             var_expand_parser_free
        - Src:             'var-expand-lexer.c:1846,2'
          Dst:             var_expand_parser_free
    - functionName:    var_expand_parser_pop_buffer_state
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1944
      functionLinenumberEnd: 1958
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         25
      ICount:          140
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - var_expand_parser__delete_buffer
        - var_expand_parser__load_buffer_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1946,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1946,7'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1946,6'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1946,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1947,3'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1949,19'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1946,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1947,3'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1949,19'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1949,19'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1949,39'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1949,39'
              BranchSideFuncs:
                - var_expand_parser__delete_buffer
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1951,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1952,5'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1954,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1954,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1954,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1954,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1954,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1954,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1955,25'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1954,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1954,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1955,25'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
      Callsites:
        - Src:             'var-expand-lexer.c:1949,2'
          Dst:             var_expand_parser__delete_buffer
        - Src:             'var-expand-lexer.c:1955,3'
          Dst:             var_expand_parser__load_buffer_state
    - functionName:    var_expand_parser_free
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr
        - yyscanner
      BBCount:         5
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
        - var_expand_parser_get_extra
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-lexer.l:160,19'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:161,2'
          Dst:             p_free_internal
    - functionName:    yy_init_globals
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2394
      functionLinenumberEnd: 2423
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          44
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser__load_buffer_state
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1791
      functionLinenumberEnd: 1797
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          60
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_lex_init_extra
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2367
      functionLinenumberEnd: 2391
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yy_user_defined
        - ptr_yy_globals
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - var_expand_parser_alloc
        - var_expand_parser_set_extra
        - yy_init_globals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2372,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2373,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'var-expand-lexer.c:2377,34'
              BranchSideFuncs:
                - var_expand_parser_alloc
                - var_expand_parser_set_extra
                - yy_init_globals
                - __errno_location
        - Branch String:   'var-expand-lexer.c:2379,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2380,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'var-expand-lexer.c:2386,13'
              BranchSideFuncs:
                - var_expand_parser_set_extra
                - yy_init_globals
      Callsites:
        - Src:             'var-expand-lexer.c:2370,5'
          Dst:             var_expand_parser_set_extra
        - Src:             'var-expand-lexer.c:2373,9'
          Dst:             __errno_location
        - Src:             'var-expand-lexer.c:2377,34'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:2380,9'
          Dst:             __errno_location
        - Src:             'var-expand-lexer.c:2388,5'
          Dst:             var_expand_parser_set_extra
        - Src:             'var-expand-lexer.c:2390,12'
          Dst:             yy_init_globals
    - functionName:    var_expand_parser_set_extra
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2242
      functionLinenumberEnd: 2245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - user_defined
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_alloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - bytes
        - yyscanner
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_malloc
        - var_expand_parser_get_extra
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-lexer.l:148,19'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:149,10'
          Dst:             p_malloc
    - functionName:    var_expand_parser_lex_init
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2340
      functionLinenumberEnd: 2357
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr_yy_globals
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - var_expand_parser_alloc
        - yy_init_globals
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2341,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2342,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'var-expand-lexer.c:2346,34'
              BranchSideFuncs:
                - var_expand_parser_alloc
                - yy_init_globals
                - __errno_location
        - Branch String:   'var-expand-lexer.c:2348,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2349,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'var-expand-lexer.c:2354,13'
              BranchSideFuncs:
                - yy_init_globals
      Callsites:
        - Src:             'var-expand-lexer.c:2342,9'
          Dst:             __errno_location
        - Src:             'var-expand-lexer.c:2346,34'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:2349,9'
          Dst:             __errno_location
        - Src:             'var-expand-lexer.c:2356,12'
          Dst:             yy_init_globals
    - functionName:    var_expand_parser_set_lloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2328
      functionLinenumberEnd: 2331
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yylloc_param
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_get_lloc
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2322
      functionLinenumberEnd: 2324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_set_lval
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2316
      functionLinenumberEnd: 2319
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yylval_param
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_get_lval
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2310
      functionLinenumberEnd: 2312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_set_debug
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2302
      functionLinenumberEnd: 2305
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _bdebug
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_get_debug
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2296
      functionLinenumberEnd: 2298
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_set_out
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2290
      functionLinenumberEnd: 2293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _out_str
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_set_in
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2284
      functionLinenumberEnd: 2287
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _in_str
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_set_column
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2267
      functionLinenumberEnd: 2275
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _column_no
        - yyscanner
      BBCount:         11
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - yy_fatal_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2271,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2271,15'
              BranchSideFuncs:
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:2271,13'
              BranchSideFuncs:
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:2271,15'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2271,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2272,12'
              BranchSideFuncs:
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:2271,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2271,13'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2272,12'
              BranchSideFuncs:
                - yy_fatal_error
      Callsites:
        - Src:             'var-expand-lexer.c:2272,12'
          Dst:             yy_fatal_error
    - functionName:    yy_fatal_error
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2138
      functionLinenumberEnd: 2143
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - msg
        - yyscanner
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - exit
        - fprintf
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-lexer.c:2142,2'
          Dst:             fprintf
        - Src:             'var-expand-lexer.c:2143,2'
          Dst:             exit
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_set_lineno
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2252
      functionLinenumberEnd: 2260
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _line_number
        - yyscanner
      BBCount:         11
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - yy_fatal_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2256,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2256,15'
              BranchSideFuncs:
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:2256,13'
              BranchSideFuncs:
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:2256,15'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2256,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2257,12'
              BranchSideFuncs:
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:2256,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2256,13'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2257,12'
              BranchSideFuncs:
                - yy_fatal_error
      Callsites:
        - Src:             'var-expand-lexer.c:2257,12'
          Dst:             yy_fatal_error
    - functionName:    var_expand_parser_get_text
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2232
      functionLinenumberEnd: 2234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_get_leng
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2222
      functionLinenumberEnd: 2224
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_get_out
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2213
      functionLinenumberEnd: 2215
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_get_in
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2204
      functionLinenumberEnd: 2206
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parser_get_column
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2191
      functionLinenumberEnd: 2198
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2194,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2194,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2194,13'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:2194,15'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2195,13'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2197,12'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:2194,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2195,13'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2197,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    var_expand_parser_get_lineno
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2178
      functionLinenumberEnd: 2185
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2181,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2181,15'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2181,13'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:2181,15'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2182,13'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2184,12'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:2181,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2182,13'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2184,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    var_expand_parser__scan_bytes
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2064
      functionLinenumberEnd: 2090
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - yybytes
        - _yybytes_len
        - yyscanner
      BBCount:         11
      ICount:          102
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - var_expand_parser__scan_buffer
        - var_expand_parser_alloc
        - yy_fatal_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2073,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2074,3'
              BranchSideFuncs:
                - var_expand_parser__scan_buffer
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:2076,10'
              BranchSideFuncs:
                - var_expand_parser__scan_buffer
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:2076,2'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2077,12'
              BranchSideFuncs:
                - var_expand_parser__scan_buffer
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:2079,22'
              BranchSideFuncs:
                - var_expand_parser__scan_buffer
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:2082,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2083,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2088,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-lexer.c:2072,17'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:2074,3'
          Dst:             yy_fatal_error
        - Src:             'var-expand-lexer.c:2081,6'
          Dst:             var_expand_parser__scan_buffer
        - Src:             'var-expand-lexer.c:2083,3'
          Dst:             yy_fatal_error
    - functionName:    var_expand_parser__scan_buffer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2014
      functionLinenumberEnd: 2040
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - base
        - size
        - yyscanner
      BBCount:         13
      ICount:          118
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - var_expand_parser__switch_to_buffer
        - var_expand_parser_alloc
        - yy_fatal_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2017,16'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2018,7'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2021,3'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:2018,45'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2019,7'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2021,3'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:2017,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2021,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2023,68'
              BranchSideFuncs:
                - var_expand_parser_alloc
                - yy_fatal_error
                - var_expand_parser__switch_to_buffer
        - Branch String:   'var-expand-lexer.c:2024,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2025,3'
              BranchSideFuncs:
                - var_expand_parser__switch_to_buffer
            - BranchSide:      'var-expand-lexer.c:2027,26'
              BranchSideFuncs:
                - var_expand_parser__switch_to_buffer
      Callsites:
        - Src:             'var-expand-lexer.c:2023,24'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:2025,3'
          Dst:             yy_fatal_error
        - Src:             'var-expand-lexer.c:2037,2'
          Dst:             var_expand_parser__switch_to_buffer
    - functionName:    var_expand_parser__switch_to_buffer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1759
      functionLinenumberEnd: 1788
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - new_buffer
        - yyscanner
      BBCount:         17
      ICount:          133
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - var_expand_parser__load_buffer_state
        - var_expand_parser_ensure_buffer_stack
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1768,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1768,28'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1768,28'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1768,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1769,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1771,7'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1771,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1771,7'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1771,7'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1771,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1774,22'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1779,29'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1771,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1774,22'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1779,29'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
      Callsites:
        - Src:             'var-expand-lexer.c:1767,2'
          Dst:             var_expand_parser_ensure_buffer_stack
        - Src:             'var-expand-lexer.c:1780,2'
          Dst:             var_expand_parser__load_buffer_state
    - functionName:    var_expand_parser_ensure_buffer_stack
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1964
      functionLinenumberEnd: 2005
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         12
      ICount:          123
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - var_expand_parser_alloc
        - var_expand_parser_realloc
        - yy_fatal_error
      functionUses:    4
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1968,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1974,20'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1988,6'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1978,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1979,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1981,10'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1988,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1988,6'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1991,13'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1998,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1999,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2002,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-lexer.c:1975,52'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:1979,4'
          Dst:             yy_fatal_error
        - Src:             'var-expand-lexer.c:1994,52'
          Dst:             var_expand_parser_realloc
        - Src:             'var-expand-lexer.c:1999,4'
          Dst:             yy_fatal_error
    - functionName:    var_expand_parser__scan_string
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2051
      functionLinenumberEnd: 2053
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yystr
        - yyscanner
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - var_expand_parser__scan_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-lexer.c:2053,37'
          Dst:             strlen
        - Src:             'var-expand-lexer.c:2053,9'
          Dst:             var_expand_parser__scan_bytes
    - functionName:    var_expand_parser_push_buffer_state
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1913
      functionLinenumberEnd: 1937
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - new_buffer
        - yyscanner
      BBCount:         22
      ICount:          149
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - var_expand_parser__load_buffer_state
        - var_expand_parser_ensure_buffer_stack
      functionUses:    0
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1915,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1916,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1918,24'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1921,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1921,7'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1921,7'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1921,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1924,22'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1930,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1921,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1924,22'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1930,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1930,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1930,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1930,6'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1930,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1931,3'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1932,29'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1930,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1931,3'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1932,29'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
      Callsites:
        - Src:             'var-expand-lexer.c:1918,2'
          Dst:             var_expand_parser_ensure_buffer_stack
        - Src:             'var-expand-lexer.c:1935,2'
          Dst:             var_expand_parser__load_buffer_state
    - functionName:    var_expand_parser__flush_buffer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1883
      functionLinenumberEnd: 1904
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - b
        - yyscanner
      BBCount:         11
      ICount:          89
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - var_expand_parser__load_buffer_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1885,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1886,3'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1888,2'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1902,12'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1902,9'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1902,9'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1902,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1902,7'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1903,25'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
      Callsites:
        - Src:             'var-expand-lexer.c:1903,3'
          Dst:             var_expand_parser__load_buffer_state
    - functionName:    var_expand_parser__init_buffer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1855
      functionLinenumberEnd: 1876
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - b
        - file
        - yyscanner
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - var_expand_parser__flush_buffer
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1868,14'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1868,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'var-expand-lexer.c:1868,11'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'var-expand-lexer.c:1868,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1868,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'var-expand-lexer.c:1869,9'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'var-expand-lexer.c:1856,15'
          Dst:             __errno_location
        - Src:             'var-expand-lexer.c:1859,2'
          Dst:             var_expand_parser__flush_buffer
        - Src:             'var-expand-lexer.c:1875,2'
          Dst:             __errno_location
    - functionName:    var_expand_parser_restart
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1741
      functionLinenumberEnd: 1752
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input_file
        - yyscanner
      BBCount:         14
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - var_expand_parser__create_buffer
        - var_expand_parser__init_buffer
        - var_expand_parser__load_buffer_state
        - var_expand_parser_ensure_buffer_stack
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1744,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1744,9'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1744,7'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1744,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1745,32'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1750,18'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1744,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1745,32'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1750,18'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
        - Branch String:   'var-expand-lexer.c:1750,18'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1750,18'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
            - BranchSide:      'var-expand-lexer.c:1750,18'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
                - var_expand_parser__load_buffer_state
      Callsites:
        - Src:             'var-expand-lexer.c:1745,9'
          Dst:             var_expand_parser_ensure_buffer_stack
        - Src:             'var-expand-lexer.c:1747,13'
          Dst:             var_expand_parser__create_buffer
        - Src:             'var-expand-lexer.c:1750,2'
          Dst:             var_expand_parser__init_buffer
        - Src:             'var-expand-lexer.c:1751,2'
          Dst:             var_expand_parser__load_buffer_state
    - functionName:    var_expand_parser__create_buffer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1806
      functionLinenumberEnd: 1826
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - file
        - size
        - yyscanner
      BBCount:         7
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - var_expand_parser__init_buffer
        - var_expand_parser_alloc
        - yy_fatal_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1810,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1811,3'
              BranchSideFuncs:
                - var_expand_parser_alloc
                - yy_fatal_error
                - var_expand_parser__init_buffer
            - BranchSide:      'var-expand-lexer.c:1813,19'
              BranchSideFuncs:
                - var_expand_parser_alloc
                - yy_fatal_error
                - var_expand_parser__init_buffer
        - Branch String:   'var-expand-lexer.c:1819,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1820,3'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
            - BranchSide:      'var-expand-lexer.c:1822,2'
              BranchSideFuncs:
                - var_expand_parser__init_buffer
      Callsites:
        - Src:             'var-expand-lexer.c:1809,24'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:1811,3'
          Dst:             yy_fatal_error
        - Src:             'var-expand-lexer.c:1818,26'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:1820,3'
          Dst:             yy_fatal_error
        - Src:             'var-expand-lexer.c:1824,2'
          Dst:             var_expand_parser__init_buffer
    - functionName:    yy_get_next_buffer
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1460
      functionLinenumberEnd: 1594
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         42
      ICount:          554
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - input_proc
        - var_expand_parser_realloc
        - var_expand_parser_restart
        - yy_fatal_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1467,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1468,3'
              BranchSideFuncs:
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1471,7'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - yy_fatal_error
                - var_expand_parser_realloc
        - Branch String:   'var-expand-lexer.c:1471,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1473,8'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1493,26'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - yy_fatal_error
                - var_expand_parser_realloc
        - Branch String:   'var-expand-lexer.c:1473,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1478,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1486,4'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1495,2'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1496,23'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - yy_fatal_error
                - var_expand_parser_realloc
            - BranchSide:      'var-expand-lexer.c:1498,7'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - yy_fatal_error
                - var_expand_parser_realloc
        - Branch String:   'var-expand-lexer.c:1498,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1502,42'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
            - BranchSide:      'var-expand-lexer.c:1507,4'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - yy_fatal_error
                - var_expand_parser_realloc
        - Branch String:   'var-expand-lexer.c:1509,3'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1513,24'
              BranchSideFuncs:
                - yy_fatal_error
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - var_expand_parser_realloc
            - BranchSide:      'var-expand-lexer.c:1547,8'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
        - Branch String:   'var-expand-lexer.c:1518,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1520,20'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
            - BranchSide:      'var-expand-lexer.c:1534,5'
              BranchSideFuncs:
                - yy_fatal_error
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - var_expand_parser_realloc
        - Branch String:   'var-expand-lexer.c:1522,10'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1523,24'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
            - BranchSide:      'var-expand-lexer.c:1525,6'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
        - Branch String:   'var-expand-lexer.c:1536,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1537,5'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - yy_fatal_error
                - var_expand_parser_realloc
            - BranchSide:      'var-expand-lexer.c:1540,23'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
                - yy_fatal_error
                - var_expand_parser_realloc
        - Branch String:   'var-expand-lexer.c:1547,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1548,16'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
            - BranchSide:      'var-expand-lexer.c:1551,3'
              BranchSideFuncs:
                - input_proc
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
        - Branch String:   'var-expand-lexer.c:1557,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1559,8'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
                - var_expand_parser_restart
            - BranchSide:      'var-expand-lexer.c:1574,11'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1559,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1561,12'
              BranchSideFuncs:
                - var_expand_parser_restart
                - var_expand_parser_realloc
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1567,12'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1576,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1578,18'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1587,21'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1581,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1582,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1584,50'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-lexer.c:1468,3'
          Dst:             yy_fatal_error
        - Src:             'var-expand-lexer.c:1529,6'
          Dst:             var_expand_parser_realloc
        - Src:             'var-expand-lexer.c:1537,5'
          Dst:             yy_fatal_error
        - Src:             'var-expand-lexer.c:1551,3'
          Dst:             input_proc
        - Src:             'var-expand-lexer.c:1562,4'
          Dst:             var_expand_parser_restart
        - Src:             'var-expand-lexer.c:1579,50'
          Dst:             var_expand_parser_realloc
        - Src:             'var-expand-lexer.c:1582,4'
          Dst:             yy_fatal_error
    - functionName:    yy_try_NUL_trans
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1632
      functionLinenumberEnd: 1653
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - yy_current_state
        - yyscanner
      BBCount:         13
      ICount:          122
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1638,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1640,34'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1643,2'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1643,2'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1645,35'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1649,36'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1646,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1643,2'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1647,19'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1653,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1653,9'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1653,25'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    yy_get_previous_state
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1599
      functionLinenumberEnd: 1623
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         17
      ICount:          145
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1606,2'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1608,20'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1623,9'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1608,19'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1608,34'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1608,18'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1609,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1611,35'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1614,3'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1614,3'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1616,36'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1620,37'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.c:1617,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1614,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1618,20'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    append_valid_utf8
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - scanner
        - state
        - value
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - scanner_error
        - str_append
        - uni_utf8_str_is_valid
      functionUses:    3
      BranchProfiles:
        - Branch String:   'var-expand-lexer.l:167,6'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:168,23'
              BranchSideFuncs:
                - str_append.3796
            - BranchSide:      'var-expand-lexer.l:171,13'
              BranchSideFuncs:
                - str_append.3796
      Callsites:
        - Src:             'var-expand-lexer.l:167,7'
          Dst:             uni_utf8_str_is_valid
        - Src:             'var-expand-lexer.l:168,9'
          Dst:             scanner_error
        - Src:             'var-expand-lexer.l:171,2'
          Dst:             str_append
    - functionName:    scanner_error
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - scanner
        - msg
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - var_expand_parser_error
        - var_expand_parser_get_extra
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'var-expand-lexer.l:140,19'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:142,2'
          Dst:             var_expand_parser_error
    - functionName:    yy_push_state
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2094
      functionLinenumberEnd: 2117
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _new_state
        - yyscanner
      BBCount:         11
      ICount:          112
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - var_expand_parser_alloc
        - var_expand_parser_realloc
        - yy_fatal_error
      functionUses:    5
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2096,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2096,7'
              BranchSideFuncs:
                - var_expand_parser_alloc
                - yy_fatal_error
                - var_expand_parser_realloc
            - BranchSide:      'var-expand-lexer.c:2100,3'
              BranchSideFuncs:
                - var_expand_parser_alloc
                - yy_fatal_error
                - var_expand_parser_realloc
        - Branch String:   'var-expand-lexer.c:2103,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2104,43'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:2108,15'
              BranchSideFuncs:
                - var_expand_parser_realloc
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:2110,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2111,4'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:2112,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-lexer.c:2104,34'
          Dst:             var_expand_parser_alloc
        - Src:             'var-expand-lexer.c:2107,34'
          Dst:             var_expand_parser_realloc
        - Src:             'var-expand-lexer.c:2111,4'
          Dst:             yy_fatal_error
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    yy_pop_state
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2120
      functionLinenumberEnd: 2126
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         5
      ICount:          49
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - yy_fatal_error
      functionUses:    11
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:2122,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:2123,3'
              BranchSideFuncs:
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:2125,8'
              BranchSideFuncs: []
      Callsites:
        - Src:             'var-expand-lexer.c:2123,3'
          Dst:             yy_fatal_error
    - functionName:    var_expand_parser_lex
      functionSourceFile: '/src/dovecot/src/lib-var-expand/var-expand-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1013
      functionLinenumberEnd: 1450
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yylval_param
        - yylloc_param
        - yyscanner
      BBCount:         133
      ICount:          1090
      EdgeCount:       152
      CyclomaticComplexity: 21
      functionsReached:
        - append_valid_utf8
        - fwrite
        - scanner_error
        - str_append
        - str_append_c
        - str_new
        - str_to_uint_hex
        - str_to_uint_oct
        - var_expand_parser__create_buffer
        - var_expand_parser__load_buffer_state
        - var_expand_parser_ensure_buffer_stack
        - var_expand_parser_get_extra
        - yy_fatal_error
        - yy_get_next_buffer
        - yy_get_previous_state
        - yy_pop_state
        - yy_push_state
        - yy_try_NUL_trans
      functionUses:    1
      BranchProfiles:
        - Branch String:   'var-expand-lexer.c:1023,7'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1025,3'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1055,2'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1031,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1032,4'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1034,10'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1034,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1035,11'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1037,10'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1037,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1038,12'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1040,10'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1040,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1040,10'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1040,8'
              BranchSideFuncs:
                - var_expand_parser_ensure_buffer_stack
                - var_expand_parser__create_buffer
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1040,10'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1041,27'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1046,25'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1040,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1041,27'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1046,25'
              BranchSideFuncs:
                - var_expand_parser__load_buffer_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1072,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1074,36'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1077,4'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1077,4'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1079,37'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1083,38'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1080,10'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1077,4'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1081,21'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1085,4'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1071,25'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1087,11'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1097,3'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:70,16'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:73,25'
              BranchSideFuncs:
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
                - scanner_error
            - BranchSide:      'var-expand-lexer.l:80,25'
              BranchSideFuncs:
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
                - scanner_error
            - BranchSide:      'var-expand-lexer.l:85,16'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:86,16'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:87,16'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:88,16'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:89,16'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:90,24'
              BranchSideFuncs:
                - scanner_error
            - BranchSide:      'var-expand-lexer.l:94,24'
              BranchSideFuncs:
                - yy_push_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:95,16'
              BranchSideFuncs:
                - yy_pop_state
            - BranchSide:      'var-expand-lexer.l:96,3'
              BranchSideFuncs:
                - append_valid_utf8
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:100,24'
              BranchSideFuncs:
                - yy_push_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:101,16'
              BranchSideFuncs:
                - yy_pop_state
            - BranchSide:      'var-expand-lexer.l:102,3'
              BranchSideFuncs:
                - append_valid_utf8
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:106,16'
              BranchSideFuncs:
                - yy_pop_state
            - BranchSide:      'var-expand-lexer.l:108,2'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:108,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:109,3'
              BranchSideFuncs:
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
            - BranchSide:      'var-expand-lexer.l:110,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:111,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:112,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:113,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:114,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:115,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:116,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:117,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:118,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:119,27'
              BranchSideFuncs:
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:120,27'
              BranchSideFuncs:
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:121,3'
              BranchSideFuncs:
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
            - BranchSide:      'var-expand-lexer.l:124,2'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:124,23'
              BranchSideFuncs:
                - yy_push_state
            - BranchSide:      'var-expand-lexer.l:125,3'
              BranchSideFuncs:
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
            - BranchSide:      'var-expand-lexer.l:126,3'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:127,3'
              BranchSideFuncs:
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
            - BranchSide:      'var-expand-lexer.l:129,1'
              BranchSideFuncs:
                - fwrite
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1101,13'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1319,2'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1319,2'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1319,2'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1319,2'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1319,2'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.c:1324,42'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
            - BranchSide:      'var-expand-lexer.c:1445,3'
              BranchSideFuncs:
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.l:73,43'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:73,46'
              BranchSideFuncs:
                - scanner_error
            - BranchSide:      'var-expand-lexer.l:74,28'
              BranchSideFuncs:
                - scanner_error
        - Branch String:   'var-expand-lexer.l:73,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:74,28'
              BranchSideFuncs:
                - scanner_error
            - BranchSide:      'var-expand-lexer.l:76,18'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.l:80,41'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:80,44'
              BranchSideFuncs:
                - scanner_error
            - BranchSide:      'var-expand-lexer.l:81,28'
              BranchSideFuncs:
                - scanner_error
        - Branch String:   'var-expand-lexer.l:80,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:81,28'
              BranchSideFuncs:
                - scanner_error
            - BranchSide:      'var-expand-lexer.l:83,18'
              BranchSideFuncs:
                - yy_pop_state
                - str_append_c.3799
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.l:96,3'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:96,3'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:97,2'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.l:102,3'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:102,3'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:103,2'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.l:109,13'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:109,48'
              BranchSideFuncs: []
            - BranchSide:      'var-expand-lexer.l:109,13'
              BranchSideFuncs: []
        - Branch String:   'var-expand-lexer.l:129,1'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.l:129,1'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.l:130,2'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1330,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1341,22'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
            - BranchSide:      'var-expand-lexer.c:1353,8'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
        - Branch String:   'var-expand-lexer.c:1353,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1357,22'
              BranchSideFuncs:
                - yy_get_previous_state
                - yy_try_NUL_trans
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1390,37'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
                - yy_get_previous_state
        - Branch String:   'var-expand-lexer.c:1374,9'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1377,15'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1384,13'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
        - Branch String:   'var-expand-lexer.c:1390,8'
          Branch Sides:
            - BranchSide:      'var-expand-lexer.c:1394,5'
              BranchSideFuncs:
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1423,6'
              BranchSideFuncs:
                - yy_get_previous_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
            - BranchSide:      'var-expand-lexer.c:1433,6'
              BranchSideFuncs:
                - yy_get_previous_state
                - yy_get_next_buffer
                - yy_get_previous_state
                - yy_get_previous_state
                - yy_try_NUL_trans
                - fwrite
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - str_append.3796
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - yy_push_state
                - var_expand_parser_get_extra
                - str_new
                - var_expand_parser_get_extra
                - str_new
                - append_valid_utf8
                - yy_pop_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - append_valid_utf8
                - yy_pop_state
                - yy_push_state
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - yy_pop_state
                - str_append_c.3799
                - str_to_uint_oct
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - str_to_uint_hex
                - yy_pop_state
                - str_append_c.3799
                - scanner_error
                - yy_pop_state
                - str_append_c.3799
                - yy_fatal_error
      Callsites:
        - Src:             'var-expand-lexer.c:1041,4'
          Dst:             var_expand_parser_ensure_buffer_stack
        - Src:             'var-expand-lexer.c:1043,5'
          Dst:             var_expand_parser__create_buffer
        - Src:             'var-expand-lexer.c:1046,3'
          Dst:             var_expand_parser__load_buffer_state
        - Src:             'var-expand-lexer.l:70,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:70,28'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:73,9'
          Dst:             str_to_uint_hex
        - Src:             'var-expand-lexer.l:74,14'
          Dst:             scanner_error
        - Src:             'var-expand-lexer.l:76,5'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:76,30'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:80,9'
          Dst:             str_to_uint_oct
        - Src:             'var-expand-lexer.l:81,14'
          Dst:             scanner_error
        - Src:             'var-expand-lexer.l:83,5'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:83,30'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:85,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:85,28'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:86,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:86,28'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:87,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:87,28'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:88,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:88,28'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:89,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:89,28'
          Dst:             str_append_c
        - Src:             'var-expand-lexer.l:90,10'
          Dst:             scanner_error
        - Src:             'var-expand-lexer.l:94,3'
          Dst:             yy_push_state
        - Src:             'var-expand-lexer.l:95,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:96,3'
          Dst:             append_valid_utf8
        - Src:             'var-expand-lexer.l:100,3'
          Dst:             yy_push_state
        - Src:             'var-expand-lexer.l:101,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:102,3'
          Dst:             append_valid_utf8
        - Src:             'var-expand-lexer.l:106,3'
          Dst:             yy_pop_state
        - Src:             'var-expand-lexer.l:109,3'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:109,3'
          Dst:             str_new
        - Src:             'var-expand-lexer.l:109,13'
          Dst:             append_valid_utf8
        - Src:             'var-expand-lexer.l:119,3'
          Dst:             yy_push_state
        - Src:             'var-expand-lexer.l:119,39'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:119,39'
          Dst:             str_new
        - Src:             'var-expand-lexer.l:120,3'
          Dst:             yy_push_state
        - Src:             'var-expand-lexer.l:120,39'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:120,39'
          Dst:             str_new
        - Src:             'var-expand-lexer.l:121,3'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:121,3'
          Dst:             str_new
        - Src:             'var-expand-lexer.l:121,13'
          Dst:             str_append
        - Src:             'var-expand-lexer.l:124,3'
          Dst:             yy_push_state
        - Src:             'var-expand-lexer.l:125,3'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:125,3'
          Dst:             str_new
        - Src:             'var-expand-lexer.l:125,13'
          Dst:             str_append
        - Src:             'var-expand-lexer.l:127,3'
          Dst:             var_expand_parser_get_extra
        - Src:             'var-expand-lexer.l:127,3'
          Dst:             str_new
        - Src:             'var-expand-lexer.l:127,13'
          Dst:             str_append
        - Src:             'var-expand-lexer.l:129,1'
          Dst:             fwrite
        - Src:             'var-expand-lexer.c:1359,23'
          Dst:             yy_get_previous_state
        - Src:             'var-expand-lexer.c:1370,20'
          Dst:             yy_try_NUL_trans
        - Src:             'var-expand-lexer.c:1390,17'
          Dst:             yy_get_next_buffer
        - Src:             'var-expand-lexer.c:1425,24'
          Dst:             yy_get_previous_state
        - Src:             'var-expand-lexer.c:1435,24'
          Dst:             yy_get_previous_state
        - Src:             'var-expand-lexer.c:1445,3'
          Dst:             yy_fatal_error
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parameter_from_state
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - number
        - param_r
      BBCount:         11
      ICount:          88
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - malloc_multiply_check
        - str_c
        - str_to_intmax
        - t_malloc0
        - t_strdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:186,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:187,3'
              BranchSideFuncs:
                - malloc_multiply_check.3844
                - t_malloc0
                - str_c
                - t_strdup
                - str_c
                - str_to_intmax
            - BranchSide:      'expansion-parameter.c:188,37'
              BranchSideFuncs:
                - malloc_multiply_check.3844
                - t_malloc0
                - str_c
                - t_strdup
                - str_c
                - str_to_intmax
        - Branch String:   'expansion-parameter.c:190,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:191,3'
              BranchSideFuncs:
                - str_c
                - str_to_intmax
            - BranchSide:      'expansion-parameter.c:195,3'
              BranchSideFuncs:
                - str_c
                - t_strdup
        - Branch String:   'expansion-parameter.c:192,7'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:193,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:194,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-parameter.c:188,37'
          Dst:             malloc_multiply_check
        - Src:             'expansion-parameter.c:188,37'
          Dst:             t_malloc0
        - Src:             'expansion-parameter.c:192,21'
          Dst:             str_c
        - Src:             'expansion-parameter.c:192,7'
          Dst:             str_to_intmax
        - Src:             'expansion-parameter.c:196,29'
          Dst:             str_c
        - Src:             'expansion-parameter.c:196,20'
          Dst:             t_strdup
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   '../../src/lib/malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   '../../src/lib/malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             '../../src/lib/malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    var_expand_parameter_string
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - param
        - convert
        - value_r
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:172,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:173,14'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:175,13'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'expansion-parameter.c:176,14'
          Dst:             t_strdup_printf
    - functionName:    var_expand_parameter_number
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - param
        - convert
        - value_r
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_intmax
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:160,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:161,14'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:163,13'
              BranchSideFuncs:
                - str_to_intmax
      Callsites:
        - Src:             'expansion-parameter.c:164,10'
          Dst:             str_to_intmax
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    var_expand_parameter_dump
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - par
      BBCount:         12
      ICount:          85
      EdgeCount:       23
      CyclomaticComplexity: 13
      functionsReached:
        - i_unreached
        - str_append
        - str_append_c
        - str_printfa
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:136,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:137,15'
              BranchSideFuncs:
                - str_printfa
                - i_unreached
                - str_append.3848
                - str_append_c.3847
                - str_printfa
                - str_printfa
            - BranchSide:      'expansion-parameter.c:139,15'
              BranchSideFuncs:
                - str_printfa
                - i_unreached
                - str_append.3848
                - str_append_c.3847
                - str_printfa
                - str_printfa
        - Branch String:   'expansion-parameter.c:140,2'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:140,2'
              BranchSideFuncs:
                - str_append_c.3847
            - BranchSide:      'expansion-parameter.c:142,15'
              BranchSideFuncs:
                - str_printfa
                - str_append_c.3847
            - BranchSide:      'expansion-parameter.c:145,15'
              BranchSideFuncs:
                - str_printfa
                - str_append_c.3847
            - BranchSide:      'expansion-parameter.c:148,14'
              BranchSideFuncs:
                - str_append.3848
                - str_append_c.3847
            - BranchSide:      'expansion-parameter.c:151,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'expansion-parameter.c:137,3'
          Dst:             str_printfa
        - Src:             'expansion-parameter.c:139,3'
          Dst:             str_printfa
        - Src:             'expansion-parameter.c:142,3'
          Dst:             str_printfa
        - Src:             'expansion-parameter.c:145,3'
          Dst:             str_printfa
        - Src:             'expansion-parameter.c:148,3'
          Dst:             str_append
        - Src:             'expansion-parameter.c:151,3'
          Dst:             i_unreached
        - Src:             'expansion-parameter.c:153,2'
          Dst:             str_append_c
    - functionName:    var_expand_parameter_iter_next
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         7
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    14
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:128,2'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:128,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-parameter.c:128,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-parameter.c:128,2'
          Dst:             i_panic
    - functionName:    var_expand_parameter_iter_more
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parameter_iter_init
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - t_malloc0
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-parameter.c:115,3'
          Dst:             malloc_multiply_check
        - Src:             'expansion-parameter.c:115,3'
          Dst:             t_malloc0
    - functionName:    var_expand_parameter_any_or_var
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - param
        - value_r
        - error_r
      BBCount:         14
      ICount:          88
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - t_strdup_printf
        - var_expand_state_lookup_variable
      functionUses:    4
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:95,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:96,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:99,6'
              BranchSideFuncs:
                - t_strdup_printf
                - var_expand_state_lookup_variable
        - Branch String:   'expansion-parameter.c:99,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:100,40'
              BranchSideFuncs:
                - var_expand_state_lookup_variable
            - BranchSide:      'expansion-parameter.c:103,13'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-parameter.c:100,7'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:102,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:103,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-parameter.c:103,13'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:104,37'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-parameter.c:106,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-parameter.c:100,7'
          Dst:             var_expand_state_lookup_variable
        - Src:             'expansion-parameter.c:104,14'
          Dst:             t_strdup_printf
    - functionName:    var_expand_parameter_string_or_var
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - param
        - value_r
        - error_r
      BBCount:         14
      ICount:          89
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - t_strdup_printf
        - var_expand_state_lookup_variable
      functionUses:    10
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:73,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:74,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:77,6'
              BranchSideFuncs:
                - t_strdup_printf
                - var_expand_state_lookup_variable
        - Branch String:   'expansion-parameter.c:77,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:78,40'
              BranchSideFuncs:
                - var_expand_state_lookup_variable
            - BranchSide:      'expansion-parameter.c:81,13'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-parameter.c:78,7'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:80,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:81,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-parameter.c:81,13'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:83,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-parameter.c:86,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-parameter.c:78,7'
          Dst:             var_expand_state_lookup_variable
        - Src:             'expansion-parameter.c:82,14'
          Dst:             t_strdup_printf
    - functionName:    var_expand_parameter_bool_or_var
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - param
        - value_r
        - error_r
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - t_strdup_printf
        - var_expand_parameter_number_or_var
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:56,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:57,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:58,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-parameter.c:58,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:59,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:60,13'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-parameter.c:60,13'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:61,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:63,52'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'expansion-parameter.c:56,6'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-parameter.c:63,14'
          Dst:             t_strdup_printf
    - functionName:    var_expand_parameter_number_or_var
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - param
        - value_r
        - error_r
      BBCount:         17
      ICount:          109
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - str_to_intmax
        - t_strdup_printf
        - var_expand_state_lookup_variable
      functionUses:    14
      BranchProfiles:
        - Branch String:   'expansion-parameter.c:27,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:28,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:32,6'
              BranchSideFuncs:
                - t_strdup_printf
                - var_expand_state_lookup_variable
                - str_to_intmax
                - t_strdup_printf
        - Branch String:   'expansion-parameter.c:32,6'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:34,40'
              BranchSideFuncs:
                - var_expand_state_lookup_variable
                - str_to_intmax
                - t_strdup_printf
            - BranchSide:      'expansion-parameter.c:42,13'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-parameter.c:34,7'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:36,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-parameter.c:37,26'
              BranchSideFuncs:
                - str_to_intmax
                - t_strdup_printf
        - Branch String:   'expansion-parameter.c:42,13'
          Branch Sides:
            - BranchSide:      'expansion-parameter.c:43,54'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-parameter.c:46,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-parameter.c:34,7'
          Dst:             var_expand_state_lookup_variable
        - Src:             'expansion-parameter.c:37,12'
          Dst:             str_to_intmax
        - Src:             'expansion-parameter.c:38,15'
          Dst:             t_strdup_printf
        - Src:             'expansion-parameter.c:43,14'
          Dst:             t_strdup_printf
    - functionName:    var_expand_parameter_idx
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 20
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - param
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_parameter_key
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-parameter.c'
      linkageType:     externalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 15
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - param
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    27
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   '../../src/lib/mempool.h:150,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    var_expand_execute_stmt
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-statement.c'
      linkageType:     externalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - stmt
        - first
        - error_r
      BBCount:         41
      ICount:          227
      EdgeCount:       48
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - i_strdup
        - i_strdup_printf
        - p_free_internal
        - t_pop_pass_str
        - t_push
        - t_strdup
        - t_strdup_printf
        - var_expand_find_filter
        - var_expand_state_lookup_variable
        - var_expand_state_set_transfer
        - var_expand_state_unset_transfer
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-statement.c:20,6'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:21,15'
              BranchSideFuncs:
                - var_expand_state_lookup_variable
                - var_expand_state_set_transfer
                - i_panic
                - var_expand_state_unset_transfer
                - p_free_internal.3877
                - i_strdup
                - var_expand_find_filter
                - p_free_internal.3877
                - t_strdup_printf
                - p_free_internal.3877
                - t_push
                - t_pop_pass_str
                - p_free_internal.3877
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - t_strdup
                - i_panic
            - BranchSide:      'expansion-statement.c:36,29'
              BranchSideFuncs:
                - var_expand_find_filter
                - p_free_internal.3877
                - t_strdup_printf
                - p_free_internal.3877
                - t_push
                - t_pop_pass_str
                - p_free_internal.3877
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - t_strdup
                - i_panic
        - Branch String:   'expansion-statement.c:22,7'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:26,36'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - p_free_internal.3877
                - i_strdup
                - var_expand_find_filter
                - p_free_internal.3877
                - t_strdup_printf
                - p_free_internal.3877
                - t_push
                - t_pop_pass_str
                - p_free_internal.3877
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - t_strdup
                - i_panic
            - BranchSide:      'expansion-statement.c:30,4'
              BranchSideFuncs:
                - var_expand_state_set_transfer
                - i_panic
        - Branch String:   'expansion-statement.c:30,4'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:30,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-statement.c:31,34'
              BranchSideFuncs:
                - var_expand_state_set_transfer
        - Branch String:   'expansion-statement.c:36,6'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:38,3'
              BranchSideFuncs:
                - t_push
                - t_pop_pass_str
                - p_free_internal.3877
                - p_free_internal.3877
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - t_strdup
                - i_panic
            - BranchSide:      'expansion-statement.c:54,14'
              BranchSideFuncs:
                - p_free_internal.3877
                - t_strdup_printf
                - p_free_internal.3877
        - Branch String:   'expansion-statement.c:40,5'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:40,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - p_free_internal.3877
                - p_free_internal.3877
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - t_strdup
                - i_panic
            - BranchSide:      'expansion-statement.c:40,5'
              BranchSideFuncs:
                - t_pop_pass_str
                - p_free_internal.3877
                - p_free_internal.3877
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - t_strdup
                - i_panic
        - Branch String:   'expansion-statement.c:40,5'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:40,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-statement.c:40,5'
              BranchSideFuncs:
                - p_free_internal.3877
                - p_free_internal.3877
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - t_strdup
        - Branch String:   'expansion-statement.c:43,7'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:44,36'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - i_strdup_printf
                - p_free_internal.3877
                - t_strdup
            - BranchSide:      'expansion-statement.c:54,2'
              BranchSideFuncs:
                - p_free_internal.3877
        - Branch String:   'expansion-statement.c:45,8'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:46,25'
              BranchSideFuncs:
                - t_strdup
            - BranchSide:      'expansion-statement.c:50,31'
              BranchSideFuncs:
                - i_strdup_printf
                - p_free_internal.3877
        - Branch String:   'expansion-statement.c:54,13'
          Branch Sides:
            - BranchSide:      'expansion-statement.c:0,0'
              BranchSideFuncs:
                - p_free_internal.3877
            - BranchSide:      'expansion-statement.c:55,3'
              BranchSideFuncs:
                - p_free_internal.3877
                - t_strdup_printf
      Callsites:
        - Src:             'expansion-statement.c:22,7'
          Dst:             var_expand_state_lookup_variable
        - Src:             'expansion-statement.c:26,4'
          Dst:             var_expand_state_unset_transfer
        - Src:             'expansion-statement.c:27,4'
          Dst:             p_free_internal
        - Src:             'expansion-statement.c:28,20'
          Dst:             i_strdup
        - Src:             'expansion-statement.c:30,4'
          Dst:             i_panic
        - Src:             'expansion-statement.c:31,4'
          Dst:             var_expand_state_set_transfer
        - Src:             'expansion-statement.c:36,6'
          Dst:             var_expand_find_filter
        - Src:             'expansion-statement.c:38,3'
          Dst:             t_push
        - Src:             'expansion-statement.c:40,5'
          Dst:             t_pop_pass_str
        - Src:             'expansion-statement.c:40,5'
          Dst:             i_panic
        - Src:             'expansion-statement.c:41,3'
          Dst:             p_free_internal
        - Src:             'expansion-statement.c:44,4'
          Dst:             var_expand_state_unset_transfer
        - Src:             'expansion-statement.c:46,16'
          Dst:             t_strdup
        - Src:             'expansion-statement.c:50,5'
          Dst:             i_strdup_printf
        - Src:             'expansion-statement.c:55,3'
          Dst:             p_free_internal
        - Src:             'expansion-statement.c:56,14'
          Dst:             t_strdup_printf
        - Src:             'expansion-statement.c:60,2'
          Dst:             p_free_internal
    - functionName:    fn_fill
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1054
      functionLinenumberEnd: 1108
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - left
        - state
        - error_r
      BBCount:         44
      ICount:          221
      EdgeCount:       54
      CyclomaticComplexity: 12
      functionsReached:
        - str_append
        - str_insert
        - str_len
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
        - var_expand_parameter_string_or_var
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1058,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1058,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1061,34'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - var_expand_parameter_number_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:1062,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1064,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
                - var_expand_parameter_number_or_var
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1092,6'
              BranchSideFuncs:
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
        - Branch String:   'expansion-filter.c:1068,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1069,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1071,36'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:1071,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1073,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1083,43'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1088,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1073,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1075,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1076,13'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - var_expand_parameter_number_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:1076,23'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1076,26'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1077,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1083,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1085,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1086,4'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - var_expand_parameter_number_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:1092,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1093,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1097,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_len.4039
                - str_append.4041
                - str_insert.4040
        - Branch String:   'expansion-filter.c:1097,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1097,2'
              BranchSideFuncs:
                - str_len.4039
                - str_append.4041
                - str_insert.4040
            - BranchSide:      'expansion-filter.c:1100,2'
              BranchSideFuncs:
                - str_len.4039
                - str_append.4041
                - str_insert.4040
        - Branch String:   'expansion-filter.c:1100,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1101,7'
              BranchSideFuncs:
                - str_append.4041
                - str_len.4039
                - str_insert.4040
            - BranchSide:      'expansion-filter.c:1107,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1101,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1102,15'
              BranchSideFuncs:
                - str_insert.4040
                - str_len.4039
                - str_append.4041
            - BranchSide:      'expansion-filter.c:1104,15'
              BranchSideFuncs:
                - str_append.4041
                - str_len.4039
                - str_insert.4040
      Callsites:
        - Src:             'expansion-filter.c:1061,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:1062,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:1064,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:1065,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:1069,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1071,11'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:1073,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:1083,8'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter.c:1097,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1100,9'
          Dst:             str_len
        - Src:             'expansion-filter.c:1102,4'
          Dst:             str_insert
        - Src:             'expansion-filter.c:1104,4'
          Dst:             str_append
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - cstr
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:72,32'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:72,2'
          Dst:             buffer_insert
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:35,27'
          Dst:             strlen
        - Src:             '../../src/lib/str.h:35,2'
          Dst:             buffer_append
    - functionName:    i_strchr_to_next
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/strfuncs.h:172,9'
          Branch Sides:
            - BranchSide:      '../../src/lib/strfuncs.h:172,9'
              BranchSideFuncs: []
            - BranchSide:      '../../src/lib/strfuncs.h:172,30'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/strfuncs.h:171,22'
          Dst:             strchr
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:275,2'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      '../../src/lib/array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             '../../src/lib/array.h:275,2'
          Dst:             i_panic
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fn_index_common
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - index
        - separator
        - error_r
      BBCount:         19
      ICount:          142
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_i
        - array_count_i
        - array_create_i
        - array_idx_i
        - i_panic
        - pool_datastack_create
        - str_c
        - str_len
        - strlen
        - strstr
        - t_strdup
        - t_strdup_until
        - var_expand_state_set_transfer
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-filter.c:922,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:923,26'
              BranchSideFuncs:
                - t_strdup_until
                - array_append_i.4049
                - strlen
                - strstr
                - t_strdup
                - array_append_i.4049
                - array_count_i.4047
                - array_idx_i.4042
                - var_expand_state_set_transfer
                - array_count_i.4047
                - i_panic
            - BranchSide:      'expansion-filter.c:928,19'
              BranchSideFuncs:
                - t_strdup
                - array_append_i.4049
                - array_count_i.4047
                - array_idx_i.4042
                - var_expand_state_set_transfer
                - array_count_i.4047
        - Branch String:   'expansion-filter.c:926,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:922,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter.c:926,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'expansion-filter.c:931,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:932,16'
              BranchSideFuncs:
                - array_count_i.4047
                - array_count_i.4047
                - array_idx_i.4042
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:934,6'
              BranchSideFuncs:
                - array_count_i.4047
                - array_idx_i.4042
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:934,16'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:934,33'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:935,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:934,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:935,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:939,10'
              BranchSideFuncs:
                - array_idx_i.4042
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:917,22'
          Dst:             str_c
        - Src:             'expansion-filter.c:918,20'
          Dst:             str_len
        - Src:             'expansion-filter.c:920,2'
          Dst:             pool_datastack_create
        - Src:             'expansion-filter.c:920,2'
          Dst:             array_create_i
        - Src:             'expansion-filter.c:922,14'
          Dst:             strstr
        - Src:             'expansion-filter.c:923,11'
          Dst:             t_strdup_until
        - Src:             'expansion-filter.c:924,3'
          Dst:             array_append_i
        - Src:             'expansion-filter.c:925,15'
          Dst:             strlen
        - Src:             'expansion-filter.c:926,3'
          Dst:             i_panic
        - Src:             'expansion-filter.c:928,10'
          Dst:             t_strdup
        - Src:             'expansion-filter.c:929,2'
          Dst:             array_append_i
        - Src:             'expansion-filter.c:932,16'
          Dst:             array_count_i
        - Src:             'expansion-filter.c:934,42'
          Dst:             array_count_i
        - Src:             'expansion-filter.c:939,10'
          Dst:             array_idx_i
        - Src:             'expansion-filter.c:941,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/array.h:149,3'
          Branch Sides:
            - BranchSide:      '../../src/lib/array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.4053
            - BranchSide:      '../../src/lib/array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.4053
      Callsites:
        - Src:             '../../src/lib/array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             '../../src/lib/array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_bswap_64
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_bswap_32
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_bswap_16
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_bswap_8
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    le64_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be64_to_cpu_unaligned
        - i_bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/byteorder.h:234,1'
          Dst:             be64_to_cpu_unaligned
        - Src:             '../../src/lib/byteorder.h:234,1'
          Dst:             i_bswap_64
    - functionName:    be64_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          57
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    le32_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_cpu_unaligned
        - i_bswap_32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/byteorder.h:235,1'
          Dst:             be32_to_cpu_unaligned
        - Src:             '../../src/lib/byteorder.h:235,1'
          Dst:             i_bswap_32
    - functionName:    be32_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    le16_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be16_to_cpu_unaligned
        - i_bswap_16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/byteorder.h:236,1'
          Dst:             be16_to_cpu_unaligned
        - Src:             '../../src/lib/byteorder.h:236,1'
          Dst:             i_bswap_16
    - functionName:    be16_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    le8_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be8_to_cpu_unaligned
        - i_bswap_8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/byteorder.h:237,1'
          Dst:             be8_to_cpu_unaligned
        - Src:             '../../src/lib/byteorder.h:237,1'
          Dst:             i_bswap_8
    - functionName:    be8_to_cpu_unaligned
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - in
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fn_number
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 898
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - be
        - state
        - error_r
      BBCount:         44
      ICount:          216
      EdgeCount:       55
      CyclomaticComplexity: 13
      functionsReached:
        - be16_to_cpu_unaligned
        - be32_to_cpu_unaligned
        - be64_to_cpu_unaligned
        - be8_to_cpu_unaligned
        - dec2str
        - le16_to_cpu_unaligned
        - le32_to_cpu_unaligned
        - le64_to_cpu_unaligned
        - le8_to_cpu_unaligned
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_state_set_transfer
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-filter.c:863,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:863,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:864,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strdup_printf
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be64_to_cpu_unaligned
                - le32_to_cpu_unaligned
                - be32_to_cpu_unaligned
                - le16_to_cpu_unaligned
                - be16_to_cpu_unaligned
                - le8_to_cpu_unaligned
                - be8_to_cpu_unaligned
        - Branch String:   'expansion-filter.c:863,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:863,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:863,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:864,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:864,2'
              BranchSideFuncs:
                - t_strdup_printf
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be64_to_cpu_unaligned
                - le32_to_cpu_unaligned
                - be32_to_cpu_unaligned
                - le16_to_cpu_unaligned
                - be16_to_cpu_unaligned
                - le8_to_cpu_unaligned
                - be8_to_cpu_unaligned
            - BranchSide:      'expansion-filter.c:865,30'
              BranchSideFuncs:
                - t_strdup_printf
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be64_to_cpu_unaligned
                - le32_to_cpu_unaligned
                - be32_to_cpu_unaligned
                - le16_to_cpu_unaligned
                - be16_to_cpu_unaligned
                - le8_to_cpu_unaligned
                - be8_to_cpu_unaligned
        - Branch String:   'expansion-filter.c:870,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:871,7'
              BranchSideFuncs:
                - le8_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be8_to_cpu_unaligned
            - BranchSide:      'expansion-filter.c:875,13'
              BranchSideFuncs:
                - t_strdup_printf
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be64_to_cpu_unaligned
                - le32_to_cpu_unaligned
                - be32_to_cpu_unaligned
                - le16_to_cpu_unaligned
                - be16_to_cpu_unaligned
        - Branch String:   'expansion-filter.c:871,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:872,34'
              BranchSideFuncs:
                - be8_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:874,34'
              BranchSideFuncs:
                - le8_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:875,13'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:876,7'
              BranchSideFuncs:
                - le16_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be16_to_cpu_unaligned
            - BranchSide:      'expansion-filter.c:880,13'
              BranchSideFuncs:
                - t_strdup_printf
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be64_to_cpu_unaligned
                - le32_to_cpu_unaligned
                - be32_to_cpu_unaligned
        - Branch String:   'expansion-filter.c:876,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:877,35'
              BranchSideFuncs:
                - be16_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:879,35'
              BranchSideFuncs:
                - le16_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:880,13'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:881,7'
              BranchSideFuncs:
                - le32_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be32_to_cpu_unaligned
            - BranchSide:      'expansion-filter.c:885,13'
              BranchSideFuncs:
                - t_strdup_printf
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be64_to_cpu_unaligned
        - Branch String:   'expansion-filter.c:881,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:882,35'
              BranchSideFuncs:
                - be32_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:884,35'
              BranchSideFuncs:
                - le32_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:885,13'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:886,7'
              BranchSideFuncs:
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
                - be64_to_cpu_unaligned
            - BranchSide:      'expansion-filter.c:892,9'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:886,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:887,35'
              BranchSideFuncs:
                - be64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:889,35'
              BranchSideFuncs:
                - le64_to_cpu_unaligned
                - dec2str
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:863,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:863,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:864,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:872,13'
          Dst:             be8_to_cpu_unaligned
        - Src:             'expansion-filter.c:874,13'
          Dst:             le8_to_cpu_unaligned
        - Src:             'expansion-filter.c:877,13'
          Dst:             be16_to_cpu_unaligned
        - Src:             'expansion-filter.c:879,13'
          Dst:             le16_to_cpu_unaligned
        - Src:             'expansion-filter.c:882,13'
          Dst:             be32_to_cpu_unaligned
        - Src:             'expansion-filter.c:884,13'
          Dst:             le32_to_cpu_unaligned
        - Src:             'expansion-filter.c:887,13'
          Dst:             be64_to_cpu_unaligned
        - Src:             'expansion-filter.c:889,13'
          Dst:             le64_to_cpu_unaligned
        - Src:             'expansion-filter.c:891,14'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:896,39'
          Dst:             dec2str
        - Src:             'expansion-filter.c:896,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    str_delete
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - str
        - pos
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:77,2'
          Dst:             buffer_delete
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    2
      BranchProfiles:
        - Branch String:   '../../src/lib/str.h:90,6'
          Branch Sides:
            - BranchSide:      '../../src/lib/str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      '../../src/lib/str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             '../../src/lib/str.h:90,6'
          Dst:             str_len
        - Src:             '../../src/lib/str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    fn_hash_algo
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - algo
        - algo_from_param
        - state
        - error_r
      BBCount:         52
      ICount:          347
      EdgeCount:       66
      CyclomaticComplexity: 16
      functionsReached:
        - buffer_append
        - buffer_create_dynamic
        - buffer_set_used_size
        - hash_method_lookup
        - i_panic
        - pool_datastack_create
        - strcmp
        - strlen
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
        - var_expand_parameter_string_or_var
        - var_expand_state_set_transfer_binary
      functionUses:    6
      BranchProfiles:
        - Branch String:   'expansion-filter.c:250,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:252,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:256,11'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_number_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
        - Branch String:   'expansion-filter.c:261,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:263,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_number_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
            - BranchSide:      'expansion-filter.c:285,2'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
        - Branch String:   'expansion-filter.c:266,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:267,9'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - i_panic
            - BranchSide:      'expansion-filter.c:272,3'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - i_panic
        - Branch String:   'expansion-filter.c:267,25'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:267,53'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - i_panic
            - BranchSide:      'expansion-filter.c:268,5'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:267,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:268,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:269,33'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - i_panic
        - Branch String:   'expansion-filter.c:269,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:270,5'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_number_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
            - BranchSide:      'expansion-filter.c:271,3'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - i_panic
        - Branch String:   'expansion-filter.c:272,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:272,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter.c:273,14'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:273,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:274,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
            - BranchSide:      'expansion-filter.c:277,21'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - var_expand_parameter_number_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
        - Branch String:   'expansion-filter.c:274,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:276,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:277,3'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_number_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
        - Branch String:   'expansion-filter.c:277,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:278,43'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
            - BranchSide:      'expansion-filter.c:282,4'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:278,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:280,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:281,3'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - var_expand_parameter_number_or_var
                - i_panic
                - var_expand_parameter_idx
                - var_expand_parameter_idx
        - Branch String:   'expansion-filter.c:285,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:285,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
            - BranchSide:      'expansion-filter.c:287,20'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append
                - var_expand_state_set_transfer_binary
                - buffer_set_used_size
                - buffer_append
                - strlen
        - Branch String:   'expansion-filter.c:285,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:285,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:285,2'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:290,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:291,21'
              BranchSideFuncs:
                - buffer_set_used_size
                - buffer_append
                - var_expand_state_set_transfer_binary
                - strlen
            - BranchSide:      'expansion-filter.c:303,39'
              BranchSideFuncs:
                - var_expand_state_set_transfer_binary
        - Branch String:   'expansion-filter.c:295,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:296,4'
              BranchSideFuncs:
                - strlen
                - buffer_set_used_size
                - buffer_append
                - var_expand_state_set_transfer_binary
            - BranchSide:      'expansion-filter.c:297,3'
              BranchSideFuncs:
                - buffer_set_used_size
                - buffer_append
                - var_expand_state_set_transfer_binary
                - strlen
      Callsites:
        - Src:             'expansion-filter.c:249,11'
          Dst:             hash_method_lookup
        - Src:             'expansion-filter.c:251,14'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:260,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:261,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:263,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:264,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:267,28'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:269,8'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:272,3'
          Dst:             i_panic
        - Src:             'expansion-filter.c:273,7'
          Dst:             strcmp
        - Src:             'expansion-filter.c:274,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:277,14'
          Dst:             strcmp
        - Src:             'expansion-filter.c:278,8'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter.c:282,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:285,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:287,20'
          Dst:             pool_datastack_create
        - Src:             'expansion-filter.c:287,20'
          Dst:             buffer_create_dynamic
        - Src:             'expansion-filter.c:288,2'
          Dst:             buffer_append
        - Src:             'expansion-filter.c:296,28'
          Dst:             strlen
        - Src:             'expansion-filter.c:299,3'
          Dst:             buffer_set_used_size
        - Src:             'expansion-filter.c:300,3'
          Dst:             buffer_append
        - Src:             'expansion-filter.c:303,2'
          Dst:             var_expand_state_set_transfer_binary
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/str.h:39,2'
          Dst:             buffer_append
    - functionName:    fn_text
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1124
      functionLinenumberEnd: 1131
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         20
      ICount:          102
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - str_c
        - str_sanitize_append_utf8
        - t_str_new
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1125,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1125,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1126,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_str_new
                - str_c
                - str_sanitize_append_utf8
                - str_c
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:1125,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1125,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1125,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1126,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1126,2'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - str_sanitize_append_utf8
                - str_c
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:1127,31'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - str_sanitize_append_utf8
                - str_c
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:1125,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:1125,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1126,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1127,21'
          Dst:             t_str_new
        - Src:             'expansion-filter.c:1128,35'
          Dst:             str_c
        - Src:             'expansion-filter.c:1128,2'
          Dst:             str_sanitize_append_utf8
        - Src:             'expansion-filter.c:1129,39'
          Dst:             str_c
        - Src:             'expansion-filter.c:1129,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_rfill
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1112
      functionLinenumberEnd: 1113
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_fill
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:1113,9'
          Dst:             fn_fill
    - functionName:    fn_lfill
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1119
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_fill
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:1119,9'
          Dst:             fn_fill
    - functionName:    fn_list
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         23
      ICount:          131
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - str_c
        - t_strarray_join
        - t_strdup_printf
        - t_strsplit_tabescaped
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_string_or_var
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1029,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1031,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - t_strsplit_tabescaped
                - t_strarray_join
                - var_expand_state_set_transfer
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1042,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - t_strsplit_tabescaped
                - t_strarray_join
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:1033,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1034,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1035,32'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - t_strsplit_tabescaped
                - t_strarray_join
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:1035,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1036,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1037,42'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - t_strsplit_tabescaped
                - t_strarray_join
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:1037,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1029,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1039,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1042,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1042,2'
              BranchSideFuncs:
                - str_c
                - t_strsplit_tabescaped
                - t_strarray_join
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:1045,58'
              BranchSideFuncs:
                - str_c
                - t_strsplit_tabescaped
                - t_strarray_join
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:1028,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:1029,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:1031,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:1032,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:1034,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1035,7'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:1037,7'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter.c:1042,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1045,52'
          Dst:             str_c
        - Src:             'expansion-filter.c:1045,30'
          Dst:             t_strsplit_tabescaped
        - Src:             'expansion-filter.c:1047,39'
          Dst:             t_strarray_join
        - Src:             'expansion-filter.c:1047,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_domain
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1011
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         20
      ICount:          94
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - i_strchr_to_next
        - str_c
        - t_strdup
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1012,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1012,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1013,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - i_strchr_to_next
                - t_strdup
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:1012,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1012,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1012,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1013,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1013,2'
              BranchSideFuncs:
                - str_c
                - i_strchr_to_next
                - t_strdup
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:1017,28'
              BranchSideFuncs:
                - str_c
                - i_strchr_to_next
                - t_strdup
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:1012,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:1012,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1013,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1017,22'
          Dst:             str_c
        - Src:             'expansion-filter.c:1018,48'
          Dst:             i_strchr_to_next
        - Src:             'expansion-filter.c:1018,39'
          Dst:             t_strdup
        - Src:             'expansion-filter.c:1018,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_username
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1002
      functionLinenumberEnd: 1007
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         20
      ICount:          85
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - fn_index_common
        - t_strdup_printf
        - var_expand_parameter_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1003,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1003,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1004,2'
              BranchSideFuncs:
                - t_strdup_printf
                - fn_index_common
        - Branch String:   'expansion-filter.c:1003,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1003,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:1003,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1004,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1004,2'
              BranchSideFuncs:
                - fn_index_common
            - BranchSide:      'expansion-filter.c:1006,25'
              BranchSideFuncs:
                - fn_index_common
      Callsites:
        - Src:             'expansion-filter.c:1003,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:1003,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1004,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:1006,9'
          Dst:             fn_index_common
    - functionName:    fn_index
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 947
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         40
      ICount:          205
      EdgeCount:       49
      CyclomaticComplexity: 11
      functionsReached:
        - fn_index_common
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
        - var_expand_parameter_string_or_var
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:948,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:948,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:950,14'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - fn_index_common
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_string_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:956,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:958,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - fn_index_common
                - var_expand_parameter_string_or_var
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:985,6'
              BranchSideFuncs:
                - t_strdup_printf
                - fn_index_common
        - Branch String:   'expansion-filter.c:961,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:962,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:963,36'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - fn_index_common
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
                - var_expand_parameter_string_or_var
        - Branch String:   'expansion-filter.c:963,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:965,43'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - fn_index_common
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:970,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - fn_index_common
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:981,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:965,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:967,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:968,4'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - fn_index_common
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_string_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:970,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:972,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:973,13'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - fn_index_common
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_string_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:973,29'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:973,32'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:974,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:985,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:986,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:990,7'
              BranchSideFuncs:
                - t_strdup_printf
                - fn_index_common
        - Branch String:   'expansion-filter.c:990,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:991,4'
              BranchSideFuncs:
                - t_strdup_printf
                - fn_index_common
            - BranchSide:      'expansion-filter.c:995,2'
              BranchSideFuncs:
                - t_strdup_printf
                - fn_index_common
        - Branch String:   'expansion-filter.c:995,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:995,2'
              BranchSideFuncs:
                - fn_index_common
            - BranchSide:      'expansion-filter.c:997,25'
              BranchSideFuncs:
                - fn_index_common
      Callsites:
        - Src:             'expansion-filter.c:955,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:956,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:958,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:959,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:962,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:963,11'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:965,8'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter.c:970,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:995,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:997,9'
          Dst:             fn_index_common
    - functionName:    fn_be_number
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 902
      functionLinenumberEnd: 903
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_number
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:903,9'
          Dst:             fn_number
    - functionName:    fn_le_number
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 909
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_number
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:909,9'
          Dst:             fn_number
    - functionName:    fn_regexp
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 755
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         55
      ICount:          389
      EdgeCount:       68
      CyclomaticComplexity: 15
      functionsReached:
        - __ctype_b_loc
        - i_panic
        - regcomp
        - regerror
        - regexec
        - regfree
        - str_append
        - str_append_c
        - str_append_data
        - str_c
        - strchr
        - strlen
        - t_str_new
        - t_strdup
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_string_or_var
        - var_expand_state_set_transfer_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:756,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:756,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:759,14'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - var_expand_parameter_idx
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:764,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:766,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - var_expand_parameter_idx
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:786,6'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
        - Branch String:   'expansion-filter.c:768,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:769,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:771,42'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - var_expand_parameter_idx
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:771,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:773,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:774,36'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:774,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:776,10'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - var_expand_parameter_idx
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:779,10'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - var_expand_parameter_idx
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:782,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:786,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:787,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:791,6'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
        - Branch String:   'expansion-filter.c:791,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:792,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:796,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
        - Branch String:   'expansion-filter.c:796,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:796,2'
              BranchSideFuncs:
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
            - BranchSide:      'expansion-filter.c:801,28'
              BranchSideFuncs:
                - str_c
                - regcomp
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
                - regerror
                - regfree
                - t_strdup
        - Branch String:   'expansion-filter.c:804,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:805,8'
              BranchSideFuncs:
                - regerror
                - regfree
                - t_strdup
            - BranchSide:      'expansion-filter.c:812,22'
              BranchSideFuncs:
                - regexec
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
                - regfree
        - Branch String:   'expansion-filter.c:813,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:815,3'
              BranchSideFuncs:
                - regfree
            - BranchSide:      'expansion-filter.c:820,36'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
        - Branch String:   'expansion-filter.c:829,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:830,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_c.4056
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
            - BranchSide:      'expansion-filter.c:850,2'
              BranchSideFuncs:
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:830,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:832,20'
              BranchSideFuncs:
                - str_append_data.4064
                - str_append_data.4064
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - i_panic
            - BranchSide:      'expansion-filter.c:845,4'
              BranchSideFuncs:
                - str_append_c.4056
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_data.4064
                - str_append_data.4064
                - i_panic
        - Branch String:   'expansion-filter.c:834,33'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:835,16'
              BranchSideFuncs:
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:836,6'
              BranchSideFuncs:
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:834,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:836,6'
              BranchSideFuncs:
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:840,4'
              BranchSideFuncs:
                - str_append_data.4064
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - i_panic
        - Branch String:   'expansion-filter.c:840,4'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:840,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter.c:841,20'
              BranchSideFuncs:
                - str_append_data.4064
                - strchr
                - regfree
                - str_append.4041
                - var_expand_state_set_transfer_data
                - __ctype_b_loc
                - str_append_c.4056
                - str_append_data.4064
                - i_panic
        - Branch String:   'expansion-filter.c:852,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:853,14'
              BranchSideFuncs:
                - str_append.4041
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:857,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-filter.c:763,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:764,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:766,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:767,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:769,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:771,7'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter.c:774,11'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:796,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:801,22'
          Dst:             str_c
        - Src:             'expansion-filter.c:804,13'
          Dst:             regcomp
        - Src:             'expansion-filter.c:806,9'
          Dst:             regerror
        - Src:             'expansion-filter.c:807,3'
          Dst:             regfree
        - Src:             'expansion-filter.c:808,14'
          Dst:             t_strdup
        - Src:             'expansion-filter.c:812,8'
          Dst:             regexec
        - Src:             'expansion-filter.c:815,3'
          Dst:             regfree
        - Src:             'expansion-filter.c:820,29'
          Dst:             strlen
        - Src:             'expansion-filter.c:820,19'
          Dst:             t_str_new
        - Src:             'expansion-filter.c:829,15'
          Dst:             strchr
        - Src:             'expansion-filter.c:830,7'
          Dst:             __ctype_b_loc
        - Src:             'expansion-filter.c:832,4'
          Dst:             str_append_data
        - Src:             'expansion-filter.c:840,4'
          Dst:             i_panic
        - Src:             'expansion-filter.c:841,4'
          Dst:             str_append_data
        - Src:             'expansion-filter.c:845,4'
          Dst:             str_append_c
        - Src:             'expansion-filter.c:850,2'
          Dst:             regfree
        - Src:             'expansion-filter.c:853,3'
          Dst:             str_append
        - Src:             'expansion-filter.c:854,3'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    regcomp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    regerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    regfree
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    regexec
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fn_ldap_dn
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         26
      ICount:          134
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - str_append
        - str_append_c
        - str_c
        - t_str_new
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_state_set_transfer_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:735,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:735,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:736,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_str_new
                - str_c
                - var_expand_state_set_transfer_data
                - str_append_c.4056
                - str_append.4041
        - Branch String:   'expansion-filter.c:735,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:735,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:735,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:736,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:736,2'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - var_expand_state_set_transfer_data
                - str_append_c.4056
                - str_append.4041
            - BranchSide:      'expansion-filter.c:738,18'
              BranchSideFuncs:
                - t_str_new
                - str_c
                - var_expand_state_set_transfer_data
                - str_append_c.4056
                - str_append.4041
        - Branch String:   'expansion-filter.c:741,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:742,8'
              BranchSideFuncs:
                - str_append_c.4056
                - var_expand_state_set_transfer_data
                - str_append.4041
            - BranchSide:      'expansion-filter.c:749,37'
              BranchSideFuncs:
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:742,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:743,15'
              BranchSideFuncs:
                - str_append.4041
                - var_expand_state_set_transfer_data
                - str_append_c.4056
            - BranchSide:      'expansion-filter.c:745,4'
              BranchSideFuncs:
                - str_append_c.4056
                - var_expand_state_set_transfer_data
                - str_append.4041
      Callsites:
        - Src:             'expansion-filter.c:735,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:735,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:736,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:738,18'
          Dst:             t_str_new
        - Src:             'expansion-filter.c:739,20'
          Dst:             str_c
        - Src:             'expansion-filter.c:743,4'
          Dst:             str_append
        - Src:             'expansion-filter.c:745,4'
          Dst:             str_append_c
        - Src:             'expansion-filter.c:749,2'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    fn_substr
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         69
      ICount:          412
      EdgeCount:       91
      CyclomaticComplexity: 24
      functionsReached:
        - p_memdup
        - pool_datastack_create
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
        - var_expand_state_set_transfer_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:651,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:651,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:654,34'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:655,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:658,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:675,7'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:660,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:661,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:662,42'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:662,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:664,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:665,32'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:665,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:666,10'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:668,39'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - var_expand_parameter_idx
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:668,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:669,10'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - var_expand_parameter_idx
                - var_expand_parameter_idx
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:672,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:675,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:676,4'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:680,2'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:680,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:680,2'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:682,6'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:682,45'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:682,48'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:683,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:682,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:683,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:687,6'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:687,45'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:687,48'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:688,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:687,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:688,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:692,6'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:692,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:693,38'
              BranchSideFuncs:
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:697,6'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:697,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:698,19'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:701,7'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:701,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:702,19'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:703,11'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:706,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:707,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:710,10'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:713,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:713,17'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:714,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:713,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:714,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:718,6'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:718,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:718,17'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:719,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:718,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:719,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:721,13'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:721,13'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:722,38'
              BranchSideFuncs:
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:725,13'
              BranchSideFuncs:
                - pool_datastack_create
                - p_memdup
                - var_expand_state_set_transfer_data
      Callsites:
        - Src:             'expansion-filter.c:654,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:655,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:658,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:659,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:661,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:662,7'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:665,7'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:668,14'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:680,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:693,3'
          Dst:             var_expand_state_set_transfer_data
        - Src:             'expansion-filter.c:722,3'
          Dst:             var_expand_state_set_transfer_data
        - Src:             'expansion-filter.c:725,13'
          Dst:             pool_datastack_create
        - Src:             'expansion-filter.c:725,4'
          Dst:             p_memdup
        - Src:             'expansion-filter.c:727,3'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    fn_truncate
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         47
      ICount:          253
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - buffer_append_buf
        - buffer_create_dynamic
        - buffer_set_used_size
        - buffer_truncate_rshift_bits
        - null_strcmp
        - pool_datastack_create
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
        - var_expand_state_set_transfer_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:587,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:587,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:589,9'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:594,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:596,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:625,6'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
        - Branch String:   'expansion-filter.c:598,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:600,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:609,39'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:600,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:602,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:603,8'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:603,18'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:603,21'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:604,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:603,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:604,6'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:607,18'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:609,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:611,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:619,14'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:611,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:613,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:614,8'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:614,18'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:614,21'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:615,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:614,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:615,6'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:618,18'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - null_strcmp
                - var_expand_parameter_idx
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:619,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:620,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:622,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:625,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:626,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:630,2'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
        - Branch String:   'expansion-filter.c:630,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:630,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
            - BranchSide:      'expansion-filter.c:632,24'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_buf
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
                - buffer_truncate_rshift_bits
        - Branch String:   'expansion-filter.c:635,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:636,31'
              BranchSideFuncs:
                - buffer_truncate_rshift_bits
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:638,24'
              BranchSideFuncs:
                - buffer_set_used_size
                - var_expand_state_set_transfer_data
      Callsites:
        - Src:             'expansion-filter.c:593,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:594,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:596,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:597,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:598,7'
          Dst:             null_strcmp
        - Src:             'expansion-filter.c:600,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:609,14'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:611,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:620,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:630,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:632,24'
          Dst:             pool_datastack_create
        - Src:             'expansion-filter.c:632,24'
          Dst:             buffer_create_dynamic
        - Src:             'expansion-filter.c:633,2'
          Dst:             buffer_append_buf
        - Src:             'expansion-filter.c:636,3'
          Dst:             buffer_truncate_rshift_bits
        - Src:             'expansion-filter.c:638,3'
          Dst:             buffer_set_used_size
        - Src:             'expansion-filter.c:640,2'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    fn_reverse
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         24
      ICount:          147
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - buffer_append_c
        - buffer_create_dynamic
        - pool_datastack_create
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_state_set_transfer_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:572,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:572,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:573,2'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - var_expand_state_set_transfer_data
                - buffer_append_c
        - Branch String:   'expansion-filter.c:572,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:572,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:572,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:573,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:573,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - var_expand_state_set_transfer_data
                - buffer_append_c
            - BranchSide:      'expansion-filter.c:575,24'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - var_expand_state_set_transfer_data
                - buffer_append_c
        - Branch String:   'expansion-filter.c:577,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:578,19'
              BranchSideFuncs:
                - buffer_append_c
                - var_expand_state_set_transfer_data
            - BranchSide:      'expansion-filter.c:579,37'
              BranchSideFuncs:
                - var_expand_state_set_transfer_data
      Callsites:
        - Src:             'expansion-filter.c:572,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:572,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:573,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:575,24'
          Dst:             pool_datastack_create
        - Src:             'expansion-filter.c:575,24'
          Dst:             buffer_create_dynamic
        - Src:             'expansion-filter.c:578,3'
          Dst:             buffer_append_c
        - Src:             'expansion-filter.c:579,2'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    fn_default
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         25
      ICount:          127
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - t_strdup_printf
        - var_expand_parameter_any_or_var
        - var_expand_parameter_key
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:72,26'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:72,29'
              BranchSideFuncs:
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:78,6'
              BranchSideFuncs:
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:72,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:73,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:78,6'
              BranchSideFuncs:
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:78,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:79,9'
              BranchSideFuncs:
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:80,43'
              BranchSideFuncs:
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:80,11'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:81,3'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:82,43'
              BranchSideFuncs:
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:82,11'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:84,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:85,11'
              BranchSideFuncs:
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:80,18'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:81,3'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:82,11'
          Dst:             var_expand_parameter_any_or_var
        - Src:             'expansion-filter.c:88,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_unhexlify
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         25
      ICount:          138
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - buffer_create_dynamic
        - hex_to_binary
        - pool_datastack_create
        - str_c
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_state_set_transfer_binary
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:551,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:551,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:552,2'
              BranchSideFuncs:
                - t_strdup_printf
                - pool_datastack_create
                - buffer_create_dynamic
                - str_c
                - hex_to_binary
                - var_expand_state_set_transfer_binary
        - Branch String:   'expansion-filter.c:551,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:551,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:551,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:552,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:552,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - str_c
                - hex_to_binary
                - var_expand_state_set_transfer_binary
            - BranchSide:      'expansion-filter.c:554,6'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - str_c
                - hex_to_binary
                - var_expand_state_set_transfer_binary
        - Branch String:   'expansion-filter.c:554,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:555,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:559,19'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - str_c
                - hex_to_binary
                - var_expand_state_set_transfer_binary
        - Branch String:   'expansion-filter.c:560,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:561,40'
              BranchSideFuncs:
                - var_expand_state_set_transfer_binary
            - BranchSide:      'expansion-filter.c:563,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-filter.c:551,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:551,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:552,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:559,19'
          Dst:             pool_datastack_create
        - Src:             'expansion-filter.c:559,19'
          Dst:             buffer_create_dynamic
        - Src:             'expansion-filter.c:560,20'
          Dst:             str_c
        - Src:             'expansion-filter.c:560,6'
          Dst:             hex_to_binary
        - Src:             'expansion-filter.c:561,3'
          Dst:             var_expand_state_set_transfer_binary
    - functionName:    fn_hexlify
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         33
      ICount:          197
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - binary_to_hex
        - str_append
        - str_append_c
        - str_c
        - strlen
        - t_str_new
        - t_strdup_printf
        - t_strndup
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:514,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:515,46'
              BranchSideFuncs:
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
                - t_strdup_printf
                - binary_to_hex
                - strlen
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:527,2'
              BranchSideFuncs:
                - t_strdup_printf
                - binary_to_hex
                - strlen
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:516,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:517,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:518,42'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - t_strdup_printf
                - binary_to_hex
                - strlen
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:518,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:520,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:521,7'
              BranchSideFuncs:
                - t_strdup_printf
                - binary_to_hex
                - strlen
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:521,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:522,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:525,2'
              BranchSideFuncs:
                - t_strdup_printf
                - binary_to_hex
                - strlen
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:527,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:527,2'
              BranchSideFuncs:
                - binary_to_hex
                - strlen
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
            - BranchSide:      'expansion-filter.c:530,17'
              BranchSideFuncs:
                - binary_to_hex
                - strlen
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:532,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:534,2'
              BranchSideFuncs:
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:534,13'
              BranchSideFuncs:
                - var_expand_state_set_transfer
                - t_strndup
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:534,13'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:535,29'
              BranchSideFuncs:
                - t_str_new
                - strlen
                - str_append.4041
                - str_c
                - var_expand_state_set_transfer
                - str_append_c.4056
            - BranchSide:      'expansion-filter.c:541,13'
              BranchSideFuncs:
                - var_expand_state_set_transfer
                - t_strndup
        - Branch String:   'expansion-filter.c:537,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:538,4'
              BranchSideFuncs:
                - str_append_c.4056
                - str_append.4041
                - str_c
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:539,14'
              BranchSideFuncs:
                - str_append.4041
                - str_c
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:515,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:517,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:518,7'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:527,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:530,3'
          Dst:             binary_to_hex
        - Src:             'expansion-filter.c:531,16'
          Dst:             strlen
        - Src:             'expansion-filter.c:535,19'
          Dst:             t_str_new
        - Src:             'expansion-filter.c:536,12'
          Dst:             strlen
        - Src:             'expansion-filter.c:538,4'
          Dst:             str_append_c
        - Src:             'expansion-filter.c:539,3'
          Dst:             str_append
        - Src:             'expansion-filter.c:540,12'
          Dst:             str_c
        - Src:             'expansion-filter.c:542,12'
          Dst:             t_strndup
        - Src:             'expansion-filter.c:543,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_unhex
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         22
      ICount:          103
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - dec2str
        - str_c
        - str_to_uintmax_hex
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:493,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:493,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:494,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - str_to_uintmax_hex
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:493,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:493,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:493,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:494,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:494,2'
              BranchSideFuncs:
                - str_c
                - str_to_uintmax_hex
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:498,31'
              BranchSideFuncs:
                - str_c
                - str_to_uintmax_hex
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:498,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:499,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:503,32'
              BranchSideFuncs:
                - dec2str
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:493,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:493,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:494,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:498,25'
          Dst:             str_c
        - Src:             'expansion-filter.c:498,6'
          Dst:             str_to_uintmax_hex
        - Src:             'expansion-filter.c:503,39'
          Dst:             dec2str
        - Src:             'expansion-filter.c:503,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_hex
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         37
      ICount:          210
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - str_append_c
        - str_c
        - str_delete
        - str_insert
        - str_len
        - str_printfa
        - str_to_uintmax
        - str_truncate
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:454,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:456,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_uintmax
                - str_truncate.4057
                - str_printfa
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:466,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - str_to_uintmax
                - str_truncate.4057
                - str_printfa
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:458,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:459,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:460,32'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_uintmax
                - str_truncate.4057
                - str_printfa
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:460,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:461,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:462,42'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_uintmax
                - str_truncate.4057
                - str_printfa
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:462,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:454,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:463,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:466,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:466,2'
              BranchSideFuncs:
                - str_c
                - str_to_uintmax
                - str_truncate.4057
                - str_printfa
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
            - BranchSide:      'expansion-filter.c:468,27'
              BranchSideFuncs:
                - str_c
                - str_to_uintmax
                - str_truncate.4057
                - str_printfa
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:468,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:469,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:473,15'
              BranchSideFuncs:
                - str_truncate.4057
                - str_printfa
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
        - Branch String:   'expansion-filter.c:476,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:477,12'
              BranchSideFuncs:
                - str_len.4039
                - str_truncate.4057
                - str_append_c.4056
            - BranchSide:      'expansion-filter.c:481,13'
              BranchSideFuncs:
                - str_len.4039
                - str_len.4039
                - str_delete
                - str_insert.4040
        - Branch String:   'expansion-filter.c:478,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:479,4'
              BranchSideFuncs:
                - str_append_c.4056
                - str_len.4039
                - str_truncate.4057
            - BranchSide:      'expansion-filter.c:480,16'
              BranchSideFuncs:
                - str_truncate.4057
        - Branch String:   'expansion-filter.c:482,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:483,15'
              BranchSideFuncs:
                - str_insert.4040
                - str_len.4039
                - str_len.4039
                - str_delete
            - BranchSide:      'expansion-filter.c:484,14'
              BranchSideFuncs:
                - str_len.4039
                - str_delete
      Callsites:
        - Src:             'expansion-filter.c:453,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:454,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:456,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:457,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:459,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:460,7'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:462,7'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:466,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:468,21'
          Dst:             str_c
        - Src:             'expansion-filter.c:468,6'
          Dst:             str_to_uintmax
        - Src:             'expansion-filter.c:473,2'
          Dst:             str_truncate
        - Src:             'expansion-filter.c:474,2'
          Dst:             str_printfa
        - Src:             'expansion-filter.c:478,10'
          Dst:             str_len
        - Src:             'expansion-filter.c:479,4'
          Dst:             str_append_c
        - Src:             'expansion-filter.c:480,3'
          Dst:             str_truncate
        - Src:             'expansion-filter.c:482,10'
          Dst:             str_len
        - Src:             'expansion-filter.c:483,4'
          Dst:             str_insert
        - Src:             'expansion-filter.c:484,34'
          Dst:             str_len
        - Src:             'expansion-filter.c:484,3'
          Dst:             str_delete
    - functionName:    fn_unbase64
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         40
      ICount:          218
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - strcmp
        - t_base64_scheme_decode
        - t_strdup_printf
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number_or_var
        - var_expand_state_set_transfer_binary
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:402,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:404,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:437,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
        - Branch String:   'expansion-filter.c:406,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:407,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:409,14'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:409,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:410,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:421,21'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:410,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:412,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:413,8'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:413,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:414,11'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:415,13'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:415,13'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:0,0'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:418,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:421,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:422,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:434,4'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:422,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:424,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:425,8'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:425,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:427,13'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:433,3'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
        - Branch String:   'expansion-filter.c:427,13'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:428,12'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
            - BranchSide:      'expansion-filter.c:430,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:437,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:437,2'
              BranchSideFuncs:
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
            - BranchSide:      'expansion-filter.c:440,26'
              BranchSideFuncs:
                - t_base64_scheme_decode
                - var_expand_state_set_transfer_binary
      Callsites:
        - Src:             'expansion-filter.c:401,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:402,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:404,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:405,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:409,7'
          Dst:             strcmp
        - Src:             'expansion-filter.c:410,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:421,14'
          Dst:             strcmp
        - Src:             'expansion-filter.c:422,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:434,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:437,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:440,3'
          Dst:             t_base64_scheme_decode
        - Src:             'expansion-filter.c:442,2'
          Dst:             var_expand_state_set_transfer_binary
    - functionName:    fn_base64
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         34
      ICount:          186
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - str_c
        - strcmp
        - t_base64_scheme_encode
        - t_strdup_printf
        - var_expand_parameter_bool_or_var
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:363,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:365,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_bool_or_var
            - BranchSide:      'expansion-filter.c:386,2'
              BranchSideFuncs:
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:367,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:368,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:370,14'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_bool_or_var
        - Branch String:   'expansion-filter.c:370,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:371,41'
              BranchSideFuncs:
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
            - BranchSide:      'expansion-filter.c:376,21'
              BranchSideFuncs:
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - var_expand_parameter_bool_or_var
        - Branch String:   'expansion-filter.c:371,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:373,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:374,9'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_bool_or_var
        - Branch String:   'expansion-filter.c:374,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:375,11'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_bool_or_var
            - BranchSide:      'expansion-filter.c:376,3'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_bool_or_var
        - Branch String:   'expansion-filter.c:376,14'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:377,41'
              BranchSideFuncs:
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
            - BranchSide:      'expansion-filter.c:383,4'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:377,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:379,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:380,8'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_bool_or_var
        - Branch String:   'expansion-filter.c:380,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:381,12'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_bool_or_var
            - BranchSide:      'expansion-filter.c:382,3'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - strcmp
                - strcmp
                - t_strdup_printf
                - var_expand_parameter_bool_or_var
                - var_expand_parameter_bool_or_var
        - Branch String:   'expansion-filter.c:386,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:386,2'
              BranchSideFuncs:
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:389,26'
              BranchSideFuncs:
                - t_base64_scheme_encode
                - str_c
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:362,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:363,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:365,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:366,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:370,7'
          Dst:             strcmp
        - Src:             'expansion-filter.c:371,8'
          Dst:             var_expand_parameter_bool_or_var
        - Src:             'expansion-filter.c:376,14'
          Dst:             strcmp
        - Src:             'expansion-filter.c:377,8'
          Dst:             var_expand_parameter_bool_or_var
        - Src:             'expansion-filter.c:383,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:386,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:389,3'
          Dst:             t_base64_scheme_encode
        - Src:             'expansion-filter.c:391,39'
          Dst:             str_c
        - Src:             'expansion-filter.c:391,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_sha512
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_hash_algo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:353,9'
          Dst:             fn_hash_algo
    - functionName:    fn_sha384
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_hash_algo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:347,9'
          Dst:             fn_hash_algo
    - functionName:    fn_sha256
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_hash_algo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:341,9'
          Dst:             fn_hash_algo
    - functionName:    fn_sha1
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_hash_algo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:335,9'
          Dst:             fn_hash_algo
    - functionName:    fn_md5
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fn_hash_algo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:329,9'
          Dst:             fn_hash_algo
    - functionName:    fn_hash
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         13
      ICount:          79
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - fn_hash_algo
        - var_expand_parameter_idx
        - var_expand_parameter_string_or_var
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:311,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:311,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:313,43'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_string_or_var
                - fn_hash_algo
        - Branch String:   'expansion-filter.c:316,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:317,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:319,48'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - fn_hash_algo
      Callsites:
        - Src:             'expansion-filter.c:316,6'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:319,13'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter.c:322,9'
          Dst:             fn_hash_algo
    - functionName:    fn_lower
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         20
      ICount:          91
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - str_c_modifiable
        - str_lcase
        - t_strdup_printf
        - var_expand_parameter_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:50,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:50,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:51,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c_modifiable
                - str_lcase
        - Branch String:   'expansion-filter.c:50,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:50,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:50,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:51,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:51,2'
              BranchSideFuncs:
                - str_c_modifiable
                - str_lcase
            - BranchSide:      'expansion-filter.c:53,33'
              BranchSideFuncs:
                - str_c_modifiable
                - str_lcase
      Callsites:
        - Src:             'expansion-filter.c:50,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:50,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:51,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:53,16'
          Dst:             str_c_modifiable
        - Src:             'expansion-filter.c:54,2'
          Dst:             str_lcase
    - functionName:    fn_upper
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         20
      ICount:          91
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - str_c_modifiable
        - str_ucase
        - t_strdup_printf
        - var_expand_parameter_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:61,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:61,2'
              BranchSideFuncs:
                - var_expand_parameter_key
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:62,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c_modifiable
                - str_ucase
        - Branch String:   'expansion-filter.c:61,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:61,2'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:61,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:62,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:62,2'
              BranchSideFuncs:
                - str_c_modifiable
                - str_ucase
            - BranchSide:      'expansion-filter.c:64,33'
              BranchSideFuncs:
                - str_c_modifiable
                - str_ucase
      Callsites:
        - Src:             'expansion-filter.c:61,2'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:61,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:62,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:64,16'
          Dst:             str_c_modifiable
        - Src:             'expansion-filter.c:65,2'
          Dst:             str_ucase
    - functionName:    fn_concat
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         21
      ICount:          140
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - str_append
        - str_append_data
        - t_str_new
        - t_strdup_printf
        - var_expand_parameter_any_or_var
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_state_set_transfer_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:216,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:216,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:218,21'
              BranchSideFuncs:
                - t_str_new
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - str_append.4041
                - t_strdup_printf
                - str_append_data.4064
        - Branch String:   'expansion-filter.c:221,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:222,19'
              BranchSideFuncs:
                - str_append_data.4064
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - str_append.4041
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:225,34'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - str_append.4041
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:227,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:229,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - str_append.4041
                - var_expand_parameter_iter_more
                - var_expand_state_set_transfer_data
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:239,37'
              BranchSideFuncs:
                - var_expand_state_set_transfer_data
        - Branch String:   'expansion-filter.c:232,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:233,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:234,39'
              BranchSideFuncs:
                - var_expand_parameter_any_or_var
                - str_append.4041
                - var_expand_parameter_iter_more
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:234,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:235,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:236,14'
              BranchSideFuncs:
                - str_append.4041
                - var_expand_parameter_iter_more
                - var_expand_state_set_transfer_data
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - t_strdup_printf
      Callsites:
        - Src:             'expansion-filter.c:218,21'
          Dst:             t_str_new
        - Src:             'expansion-filter.c:222,3'
          Dst:             str_append_data
        - Src:             'expansion-filter.c:225,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:227,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:229,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:231,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:233,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:234,7'
          Dst:             var_expand_parameter_any_or_var
        - Src:             'expansion-filter.c:236,3'
          Dst:             str_append
        - Src:             'expansion-filter.c:239,2'
          Dst:             var_expand_state_set_transfer_data
    - functionName:    fn_calculate
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         59
      ICount:          374
      EdgeCount:       70
      CyclomaticComplexity: 13
      functionsReached:
        - dec2str
        - i_unreached
        - str_c
        - str_printfa
        - str_to_intmax
        - t_strdup_printf
        - var_expand_parameter_idx
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_number
        - var_expand_parameter_number_or_var
        - var_expand_state_set_transfer
        - var_expand_state_unset_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:113,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:113,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:116,34'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:122,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:124,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
                - var_expand_parameter_number
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:147,2'
              BranchSideFuncs:
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:126,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:127,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:129,36'
              BranchSideFuncs:
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
                - var_expand_parameter_number
        - Branch String:   'expansion-filter.c:129,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:131,36'
              BranchSideFuncs:
                - var_expand_parameter_number
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:138,43'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:143,4'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:131,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:132,6'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:135,11'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:138,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:140,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:141,4'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - t_strdup_printf
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_idx
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:147,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:147,2'
              BranchSideFuncs:
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:153,6'
              BranchSideFuncs:
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:153,29'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:153,32'
              BranchSideFuncs:
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:171,26'
              BranchSideFuncs:
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
        - Branch String:   'expansion-filter.c:153,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:154,7'
              BranchSideFuncs:
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:171,26'
              BranchSideFuncs:
                - str_c
                - str_to_intmax
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
        - Branch String:   'expansion-filter.c:154,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:155,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:158,13'
              BranchSideFuncs:
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:160,43'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:160,41'
              BranchSideFuncs:
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:160,41'
              BranchSideFuncs:
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:160,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:162,8'
              BranchSideFuncs:
                - dec2str
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:165,10'
              BranchSideFuncs:
                - dec2str
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:171,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:172,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:176,10'
              BranchSideFuncs:
                - i_unreached
                - var_expand_state_unset_transfer
                - str_printfa
        - Branch String:   'expansion-filter.c:176,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:178,12'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - str_printfa
            - BranchSide:      'expansion-filter.c:181,12'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - str_printfa
            - BranchSide:      'expansion-filter.c:184,12'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - str_printfa
            - BranchSide:      'expansion-filter.c:187,7'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - str_printfa
            - BranchSide:      'expansion-filter.c:194,7'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - str_printfa
            - BranchSide:      'expansion-filter.c:200,2'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'expansion-filter.c:202,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'expansion-filter.c:187,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:188,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:191,12'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - str_printfa
        - Branch String:   'expansion-filter.c:194,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:195,5'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:198,12'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - str_printfa
      Callsites:
        - Src:             'expansion-filter.c:116,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter.c:122,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter.c:124,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter.c:125,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:127,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:129,11'
          Dst:             var_expand_parameter_idx
        - Src:             'expansion-filter.c:131,8'
          Dst:             var_expand_parameter_number
        - Src:             'expansion-filter.c:138,8'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter.c:147,2'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:166,40'
          Dst:             dec2str
        - Src:             'expansion-filter.c:166,3'
          Dst:             var_expand_state_set_transfer
        - Src:             'expansion-filter.c:171,20'
          Dst:             str_c
        - Src:             'expansion-filter.c:171,6'
          Dst:             str_to_intmax
        - Src:             'expansion-filter.c:202,3'
          Dst:             i_unreached
        - Src:             'expansion-filter.c:207,2'
          Dst:             var_expand_state_unset_transfer
        - Src:             'expansion-filter.c:208,2'
          Dst:             str_printfa
    - functionName:    fn_literal
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         15
      ICount:          85
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - t_strdup_printf
        - var_expand_parameter_any_or_var
        - var_expand_parameter_key
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:99,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:99,2'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:100,45'
              BranchSideFuncs:
                - var_expand_parameter_key
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:101,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:102,3'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:104,38'
              BranchSideFuncs:
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:104,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:105,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:106,32'
              BranchSideFuncs:
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter.c:100,20'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:102,3'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:104,6'
          Dst:             var_expand_parameter_any_or_var
        - Src:             'expansion-filter.c:106,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    fn_lookup
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - t_strdup_printf
        - var_expand_parameter_key
        - var_expand_parameter_string_or_var
        - var_expand_state_lookup_variable
        - var_expand_state_set_transfer
        - var_expand_state_unset_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:24,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:25,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:29,45'
              BranchSideFuncs:
                - var_expand_parameter_key
                - var_expand_state_unset_transfer
                - var_expand_parameter_string_or_var
                - var_expand_state_lookup_variable
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter.c:30,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:31,3'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter.c:33,34'
              BranchSideFuncs:
                - var_expand_state_unset_transfer
                - var_expand_parameter_string_or_var
                - var_expand_state_lookup_variable
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:36,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:37,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:39,39'
              BranchSideFuncs:
                - var_expand_state_lookup_variable
                - var_expand_state_set_transfer
        - Branch String:   'expansion-filter.c:39,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:40,33'
              BranchSideFuncs:
                - var_expand_state_set_transfer
            - BranchSide:      'expansion-filter.c:43,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-filter.c:29,20'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter.c:31,3'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter.c:33,2'
          Dst:             var_expand_state_unset_transfer
        - Src:             'expansion-filter.c:36,6'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter.c:39,6'
          Dst:             var_expand_state_lookup_variable
        - Src:             'expansion-filter.c:40,3'
          Dst:             var_expand_state_set_transfer
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:159,2'
          Dst:             buffer_free
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/lib/array.h:244,2'
          Dst:             buffer_delete
    - functionName:    var_expand_unregister_filter
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1212
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         13
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - array_delete_i
        - array_is_created_i
        - i_panic
        - i_unreached
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1202,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1202,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter.c:1205,2'
              BranchSideFuncs:
                - i_unreached
                - strcmp
                - array_delete_i.4122
        - Branch String:   'expansion-filter.c:1205,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1206,20'
              BranchSideFuncs:
                - strcmp
                - i_unreached
                - array_delete_i.4122
            - BranchSide:      'expansion-filter.c:1212,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'expansion-filter.c:1207,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1208,4'
              BranchSideFuncs:
                - array_delete_i.4122
            - BranchSide:      'expansion-filter.c:1211,2'
              BranchSideFuncs:
                - i_unreached
                - strcmp
                - array_delete_i.4122
      Callsites:
        - Src:             'expansion-filter.c:1202,2'
          Dst:             array_is_created_i
        - Src:             'expansion-filter.c:1202,2'
          Dst:             i_panic
        - Src:             'expansion-filter.c:1207,7'
          Dst:             strcmp
        - Src:             'expansion-filter.c:1208,4'
          Dst:             array_delete_i
        - Src:             'expansion-filter.c:1212,2'
          Dst:             i_unreached
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib-var-expand/../../src/lib/array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    var_expand_find_filter
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1216
      functionLinenumberEnd: 1236
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - fn_r
      BBCount:         19
      ICount:          113
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - array_is_created_i
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1217,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1218,41'
              BranchSideFuncs:
                - strcmp
                - array_is_created_i.4123
                - strcmp
            - BranchSide:      'expansion-filter.c:1224,6'
              BranchSideFuncs:
                - array_is_created_i.4123
                - strcmp
        - Branch String:   'expansion-filter.c:1218,7'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1219,39'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1222,2'
              BranchSideFuncs:
                - array_is_created_i.4123
                - strcmp
                - strcmp
        - Branch String:   'expansion-filter.c:1224,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1227,3'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter.c:1235,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1227,3'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1228,15'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter.c:1233,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter.c:1228,8'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1229,13'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter.c:1232,3'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'expansion-filter.c:1218,7'
          Dst:             strcmp
        - Src:             'expansion-filter.c:1224,6'
          Dst:             array_is_created_i
        - Src:             'expansion-filter.c:1228,8'
          Dst:             strcmp
    - functionName:    var_expand_is_filter
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1195
      functionLinenumberEnd: 1197
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - var_expand_find_filter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'expansion-filter.c:1197,9'
          Dst:             var_expand_find_filter
    - functionName:    var_expand_free_filters
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1176
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_free_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1175,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1175,2'
              BranchSideFuncs:
                - array_free_i.4121
            - BranchSide:      'expansion-filter.c:1175,2'
              BranchSideFuncs:
                - array_free_i.4121
      Callsites:
        - Src:             'expansion-filter.c:1175,2'
          Dst:             array_free_i
    - functionName:    var_expand_register_filter
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - filter
      BBCount:         10
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - i_panic
        - lib_atexit
        - var_expand_free_filters
        - var_expand_is_filter
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter.c:1180,6'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1181,3'
              BranchSideFuncs:
                - var_expand_is_filter
                - array_append_i.4049
                - i_panic
            - BranchSide:      'expansion-filter.c:1184,40'
              BranchSideFuncs:
                - var_expand_is_filter
                - array_append_i.4049
                - i_panic
        - Branch String:   'expansion-filter.c:1185,2'
          Branch Sides:
            - BranchSide:      'expansion-filter.c:1185,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter.c:1185,2'
              BranchSideFuncs:
                - array_append_i.4049
      Callsites:
        - Src:             'expansion-filter.c:1180,7'
          Dst:             array_is_created_i
        - Src:             'expansion-filter.c:1181,3'
          Dst:             array_create_i
        - Src:             'expansion-filter.c:1182,3'
          Dst:             lib_atexit
        - Src:             'expansion-filter.c:1182,3'
          Dst:             var_expand_free_filters
        - Src:             'expansion-filter.c:1184,19'
          Dst:             var_expand_is_filter
        - Src:             'expansion-filter.c:1185,2'
          Dst:             i_panic
        - Src:             'expansion-filter.c:1191,2'
          Dst:             array_append_i
    - functionName:    fn_if_cmp
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-if.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
        - p_lhs
        - op
        - p_rhs
        - result_r
        - error_r
      BBCount:         44
      ICount:          400
      EdgeCount:       47
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - regcomp
        - regerror
        - regexec
        - regfree
        - strcmp
        - t_malloc_no0
        - t_strdup_printf
        - var_expand_parameter_number_or_var
        - var_expand_parameter_string_or_var
        - wildcard_match
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-filter-if.c:69,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:72,42'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - var_expand_parameter_number_or_var
                - i_panic
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:104,41'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - var_expand_parameter_string_or_var
                - regcomp
                - regexec
                - regfree
                - i_panic
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
                - wildcard_match
                - wildcard_match
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_panic
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:72,7'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:73,54'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:75,49'
              BranchSideFuncs:
                - var_expand_parameter_number_or_var
                - i_panic
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:79,3'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:81,16'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:84,16'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:87,16'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:90,16'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:93,16'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:96,16'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:99,45'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'expansion-filter-if.c:104,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:105,52'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:107,48'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - regcomp
                - regexec
                - regfree
                - i_panic
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
                - wildcard_match
                - wildcard_match
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - strcmp
                - i_panic
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:112,2'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:114,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter-if.c:117,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter-if.c:120,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter-if.c:123,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter-if.c:126,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter-if.c:129,22'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'expansion-filter-if.c:132,30'
              BranchSideFuncs:
                - wildcard_match
            - BranchSide:      'expansion-filter-if.c:135,31'
              BranchSideFuncs:
                - wildcard_match
            - BranchSide:      'expansion-filter-if.c:138,7'
              BranchSideFuncs:
                - regcomp
                - regexec
                - regfree
                - i_panic
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:144,27'
              BranchSideFuncs:
                - regcomp
                - regexec
                - regfree
                - i_panic
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:169,44'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'expansion-filter-if.c:144,7'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:147,20'
              BranchSideFuncs:
                - regerror
                - t_malloc_no0
                - regerror
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:154,27'
              BranchSideFuncs:
                - regexec
                - regfree
                - i_panic
        - Branch String:   'expansion-filter-if.c:154,7'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:155,4'
              BranchSideFuncs:
                - regfree
                - i_panic
            - BranchSide:      'expansion-filter-if.c:158,8'
              BranchSideFuncs:
                - regfree
        - Branch String:   'expansion-filter-if.c:155,4'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:155,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter-if.c:156,8'
              BranchSideFuncs:
                - regfree
      Callsites:
        - Src:             'expansion-filter-if.c:72,7'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter-if.c:73,15'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:75,14'
          Dst:             var_expand_parameter_number_or_var
        - Src:             'expansion-filter-if.c:76,15'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:99,4'
          Dst:             i_panic
        - Src:             'expansion-filter-if.c:104,6'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter-if.c:105,14'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:107,13'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter-if.c:108,14'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:114,15'
          Dst:             strcmp
        - Src:             'expansion-filter-if.c:117,15'
          Dst:             strcmp
        - Src:             'expansion-filter-if.c:120,15'
          Dst:             strcmp
        - Src:             'expansion-filter-if.c:123,15'
          Dst:             strcmp
        - Src:             'expansion-filter-if.c:126,15'
          Dst:             strcmp
        - Src:             'expansion-filter-if.c:129,15'
          Dst:             strcmp
        - Src:             'expansion-filter-if.c:132,15'
          Dst:             wildcard_match
        - Src:             'expansion-filter-if.c:135,16'
          Dst:             wildcard_match
        - Src:             'expansion-filter-if.c:144,13'
          Dst:             regcomp
        - Src:             'expansion-filter-if.c:147,11'
          Dst:             regerror
        - Src:             'expansion-filter-if.c:148,13'
          Dst:             t_malloc_no0
        - Src:             'expansion-filter-if.c:149,10'
          Dst:             regerror
        - Src:             'expansion-filter-if.c:150,15'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:154,13'
          Dst:             regexec
        - Src:             'expansion-filter-if.c:155,4'
          Dst:             i_panic
        - Src:             'expansion-filter-if.c:160,3'
          Dst:             regfree
        - Src:             'expansion-filter-if.c:169,3'
          Dst:             i_panic
    - functionName:    var_expand_if_str_to_comp
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-if.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - op
      BBCount:         14
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-filter-if.c:55,2'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:56,3'
              BranchSideFuncs:
                - strcmp
                - i_panic
            - BranchSide:      'expansion-filter-if.c:60,2'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter-if.c:56,3'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:56,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter-if.c:57,14'
              BranchSideFuncs:
                - strcmp
                - i_panic
        - Branch String:   'expansion-filter-if.c:57,7'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:58,11'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:59,2'
              BranchSideFuncs:
                - strcmp
                - i_panic
      Callsites:
        - Src:             'expansion-filter-if.c:56,3'
          Dst:             i_panic
        - Src:             'expansion-filter-if.c:57,7'
          Dst:             strcmp
    - functionName:    expansion_filter_if
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-if.c'
      linkageType:     externalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         50
      ICount:          313
      EdgeCount:       61
      CyclomaticComplexity: 13
      functionsReached:
        - fn_if_cmp
        - i_panic
        - t_strdup_printf
        - var_expand_if_str_to_comp
        - var_expand_parameter_any_or_var
        - var_expand_parameter_from_state
        - var_expand_parameter_iter_init
        - var_expand_parameter_iter_more
        - var_expand_parameter_iter_next
        - var_expand_parameter_key
        - var_expand_parameter_string_or_var
        - var_expand_state_set_transfer
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter-if.c:194,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:195,15'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:197,15'
              BranchSideFuncs:
                - var_expand_parameter_iter_init
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:201,2'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:203,35'
              BranchSideFuncs:
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:224,6'
              BranchSideFuncs:
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:205,7'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:206,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:208,11'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
                - var_expand_parameter_string_or_var
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:208,3'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:209,27'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:211,43'
              BranchSideFuncs:
                - var_expand_parameter_string_or_var
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:216,27'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:217,29'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:218,31'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:219,20'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:221,14'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:211,8'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:212,51'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:215,4'
              BranchSideFuncs:
                - var_expand_parameter_iter_more
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
                - var_expand_parameter_iter_next
                - var_expand_parameter_key
                - var_expand_parameter_string_or_var
                - t_strdup_printf
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:224,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:225,4'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:229,55'
              BranchSideFuncs:
                - var_expand_if_str_to_comp
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:231,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:232,61'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:236,7'
              BranchSideFuncs:
                - var_expand_parameter_from_state
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
        - Branch String:   'expansion-filter-if.c:236,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:237,39'
              BranchSideFuncs:
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
            - BranchSide:      'expansion-filter-if.c:248,2'
              BranchSideFuncs:
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
        - Branch String:   'expansion-filter-if.c:237,7'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:239,8'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:246,2'
              BranchSideFuncs:
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
                - i_panic
        - Branch String:   'expansion-filter-if.c:239,8'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:240,6'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:242,6'
              BranchSideFuncs: []
        - Branch String:   'expansion-filter-if.c:248,2'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:248,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter-if.c:251,16'
              BranchSideFuncs:
                - fn_if_cmp
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:251,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:252,3'
              BranchSideFuncs: []
            - BranchSide:      'expansion-filter-if.c:253,43'
              BranchSideFuncs:
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:253,43'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:253,52'
              BranchSideFuncs:
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:253,61'
              BranchSideFuncs:
                - var_expand_parameter_any_or_var
                - var_expand_state_set_transfer
                - t_strdup_printf
        - Branch String:   'expansion-filter-if.c:256,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-if.c:258,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'expansion-filter-if.c:263,32'
              BranchSideFuncs:
                - var_expand_state_set_transfer
      Callsites:
        - Src:             'expansion-filter-if.c:200,3'
          Dst:             var_expand_parameter_iter_init
        - Src:             'expansion-filter-if.c:201,9'
          Dst:             var_expand_parameter_iter_more
        - Src:             'expansion-filter-if.c:203,4'
          Dst:             var_expand_parameter_iter_next
        - Src:             'expansion-filter-if.c:204,21'
          Dst:             var_expand_parameter_key
        - Src:             'expansion-filter-if.c:206,4'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:211,8'
          Dst:             var_expand_parameter_string_or_var
        - Src:             'expansion-filter-if.c:212,16'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:229,29'
          Dst:             var_expand_if_str_to_comp
        - Src:             'expansion-filter-if.c:232,14'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:237,7'
          Dst:             var_expand_parameter_from_state
        - Src:             'expansion-filter-if.c:248,2'
          Dst:             i_panic
        - Src:             'expansion-filter-if.c:251,6'
          Dst:             fn_if_cmp
        - Src:             'expansion-filter-if.c:256,6'
          Dst:             var_expand_parameter_any_or_var
        - Src:             'expansion-filter-if.c:257,14'
          Dst:             t_strdup_printf
        - Src:             'expansion-filter-if.c:263,2'
          Dst:             var_expand_state_set_transfer
    - functionName:    expansion_filter_decrypt
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-crypt.c'
      linkageType:     externalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - var_expand_crypt_load
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter-crypt.c:56,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-crypt.c:56,6'
              BranchSideFuncs:
                - var_expand_crypt_load
            - BranchSide:      'expansion-filter-crypt.c:57,3'
              BranchSideFuncs:
                - var_expand_crypt_load
      Callsites:
        - Src:             'expansion-filter-crypt.c:57,3'
          Dst:             var_expand_crypt_load
    - functionName:    var_expand_crypt_load
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-crypt.c'
      linkageType:     externalLinkage
      functionLinenumber: 20
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lib_atexit
        - module_dir_init
        - module_dir_load
        - var_expand_crypt_unload
      functionUses:    2
      BranchProfiles:
        - Branch String:   'expansion-filter-crypt.c:21,34'
          Branch Sides:
            - BranchSide:      'expansion-filter-crypt.c:21,34'
              BranchSideFuncs:
                - module_dir_load
                - module_dir_init
                - lib_atexit
            - BranchSide:      'expansion-filter-crypt.c:21,34'
              BranchSideFuncs:
                - module_dir_load
                - module_dir_init
                - lib_atexit
      Callsites:
        - Src:             'expansion-filter-crypt.c:30,3'
          Dst:             module_dir_load
        - Src:             'expansion-filter-crypt.c:31,2'
          Dst:             module_dir_init
        - Src:             'expansion-filter-crypt.c:32,2'
          Dst:             lib_atexit
        - Src:             'expansion-filter-crypt.c:32,2'
          Dst:             var_expand_crypt_unload
    - functionName:    var_expand_crypt_unload
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - module_dir_unload
      functionUses:    1
      BranchProfiles:
        - Branch String:   'expansion-filter-crypt.c:15,26'
          Branch Sides:
            - BranchSide:      'expansion-filter-crypt.c:15,26'
              BranchSideFuncs:
                - module_dir_unload
            - BranchSide:      'expansion-filter-crypt.c:15,26'
              BranchSideFuncs:
                - module_dir_unload
      Callsites:
        - Src:             'expansion-filter-crypt.c:16,2'
          Dst:             module_dir_unload
    - functionName:    expansion_filter_encrypt
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-crypt.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stmt
        - state
        - error_r
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - var_expand_crypt_load
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter-crypt.c:47,6'
          Branch Sides:
            - BranchSide:      'expansion-filter-crypt.c:47,6'
              BranchSideFuncs:
                - var_expand_crypt_load
            - BranchSide:      'expansion-filter-crypt.c:48,3'
              BranchSideFuncs:
                - var_expand_crypt_load
      Callsites:
        - Src:             'expansion-filter-crypt.c:48,3'
          Dst:             var_expand_crypt_load
    - functionName:    expansion_filter_crypt_set_functions
      functionSourceFile: '/src/dovecot/src/lib-var-expand/expansion-filter-crypt.c'
      linkageType:     externalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - encrypt
        - decrypt
      BBCount:         10
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'expansion-filter-crypt.c:38,2'
          Branch Sides:
            - BranchSide:      'expansion-filter-crypt.c:38,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter-crypt.c:38,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'expansion-filter-crypt.c:38,2'
          Branch Sides:
            - BranchSide:      'expansion-filter-crypt.c:38,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'expansion-filter-crypt.c:38,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'expansion-filter-crypt.c:38,2'
          Dst:             i_panic
    - functionName:    fuzzer_t_strndup_replace_zero
      functionSourceFile: '/src/dovecot/src/lib-test/fuzzer.c'
      linkageType:     externalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - data
        - size
        - subst
      BBCount:         10
      ICount:          81
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - t_malloc_no0
      functionUses:    0
      BranchProfiles:
        - Branch String:   'fuzzer.c:94,2'
          Branch Sides:
            - BranchSide:      'fuzzer.c:95,16'
              BranchSideFuncs: []
            - BranchSide:      'fuzzer.c:98,2'
              BranchSideFuncs: []
        - Branch String:   'fuzzer.c:96,16'
          Branch Sides:
            - BranchSide:      'fuzzer.c:96,26'
              BranchSideFuncs: []
            - BranchSide:      'fuzzer.c:96,40'
              BranchSideFuncs: []
      Callsites:
        - Src:             'fuzzer.c:93,14'
          Dst:             t_malloc_no0
    - functionName:    pump_finished
      functionSourceFile: '/src/dovecot/src/lib-test/fuzzer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - status
        - fuzz_ctx
      BBCount:         10
      ICount:          78
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - i_error
        - i_fatal
        - i_stream_get_error
        - i_stream_get_name
        - iostream_pump_destroy
        - iostream_pump_get_input
        - iostream_pump_get_output
        - o_stream_get_error
        - o_stream_get_fd
        - o_stream_get_name
        - shutdown
      functionUses:    1
      BranchProfiles:
        - Branch String:   'fuzzer.c:44,2'
          Branch Sides:
            - BranchSide:      'fuzzer.c:46,3'
              BranchSideFuncs:
                - o_stream_get_fd
                - shutdown
                - iostream_pump_destroy
                - i_fatal
            - BranchSide:      'fuzzer.c:48,52'
              BranchSideFuncs:
                - i_stream_get_name
                - i_stream_get_error
                - i_error
                - o_stream_get_fd
                - shutdown
                - iostream_pump_destroy
                - i_fatal
            - BranchSide:      'fuzzer.c:52,53'
              BranchSideFuncs:
                - o_stream_get_name
                - o_stream_get_error
                - i_error
                - o_stream_get_fd
                - shutdown
                - iostream_pump_destroy
                - i_fatal
            - BranchSide:      'fuzzer.c:57,31'
              BranchSideFuncs:
                - o_stream_get_fd
                - shutdown
                - iostream_pump_destroy
                - i_fatal
        - Branch String:   'fuzzer.c:57,6'
          Branch Sides:
            - BranchSide:      'fuzzer.c:58,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'fuzzer.c:59,25'
              BranchSideFuncs:
                - iostream_pump_destroy
      Callsites:
        - Src:             'fuzzer.c:41,26'
          Dst:             iostream_pump_get_input
        - Src:             'fuzzer.c:42,27'
          Dst:             iostream_pump_get_output
        - Src:             'fuzzer.c:48,34'
          Dst:             i_stream_get_name
        - Src:             'fuzzer.c:49,4'
          Dst:             i_stream_get_error
        - Src:             'fuzzer.c:48,3'
          Dst:             i_error
        - Src:             'fuzzer.c:52,35'
          Dst:             o_stream_get_name
        - Src:             'fuzzer.c:53,4'
          Dst:             o_stream_get_error
        - Src:             'fuzzer.c:52,3'
          Dst:             i_error
        - Src:             'fuzzer.c:57,15'
          Dst:             o_stream_get_fd
        - Src:             'fuzzer.c:57,6'
          Dst:             shutdown
        - Src:             'fuzzer.c:58,3'
          Dst:             i_fatal
        - Src:             'fuzzer.c:59,2'
          Dst:             iostream_pump_destroy
    - functionName:    shutdown
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzzer_io_as_fd
      functionSourceFile: '/src/dovecot/src/lib-test/fuzzer.c'
      linkageType:     externalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fuzz_ctx
        - data
        - size
      BBCount:         5
      ICount:          88
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_fatal
        - i_stream_create_from_data
        - i_stream_set_name
        - i_stream_unref
        - iostream_pump_create
        - iostream_pump_set_completion_callback
        - iostream_pump_start
        - net_set_nonblock
        - o_stream_create_fd
        - o_stream_set_name
        - o_stream_set_no_error_handling
        - o_stream_unref
        - pump_finished
        - socketpair
      functionUses:    1
      BranchProfiles:
        - Branch String:   'fuzzer.c:67,6'
          Branch Sides:
            - BranchSide:      'fuzzer.c:68,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'fuzzer.c:69,19'
              BranchSideFuncs:
                - net_set_nonblock
                - net_set_nonblock
                - i_stream_create_from_data
                - o_stream_create_fd
                - i_stream_set_name
                - o_stream_set_name
                - o_stream_set_no_error_handling
                - iostream_pump_create
                - iostream_pump_set_completion_callback
                - i_stream_unref
                - o_stream_unref
                - iostream_pump_start
      Callsites:
        - Src:             'fuzzer.c:67,6'
          Dst:             socketpair
        - Src:             'fuzzer.c:68,3'
          Dst:             i_fatal
        - Src:             'fuzzer.c:69,2'
          Dst:             net_set_nonblock
        - Src:             'fuzzer.c:70,2'
          Dst:             net_set_nonblock
        - Src:             'fuzzer.c:72,26'
          Dst:             i_stream_create_from_data
        - Src:             'fuzzer.c:73,27'
          Dst:             o_stream_create_fd
        - Src:             'fuzzer.c:74,2'
          Dst:             i_stream_set_name
        - Src:             'fuzzer.c:75,2'
          Dst:             o_stream_set_name
        - Src:             'fuzzer.c:76,2'
          Dst:             o_stream_set_no_error_handling
        - Src:             'fuzzer.c:78,19'
          Dst:             iostream_pump_create
        - Src:             'fuzzer.c:81,2'
          Dst:             iostream_pump_set_completion_callback
        - Src:             'fuzzer.c:81,2'
          Dst:             pump_finished
        - Src:             'fuzzer.c:83,2'
          Dst:             i_stream_unref
        - Src:             'fuzzer.c:84,2'
          Dst:             o_stream_unref
        - Src:             'fuzzer.c:85,2'
          Dst:             iostream_pump_start
    - functionName:    socketpair
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzzer_deinit
      functionSourceFile: '/src/dovecot/src/lib-test/fuzzer.c'
      linkageType:     externalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fuzz_ctx
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - io_loop_destroy
        - iostream_pump_destroy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'fuzzer.c:30,6'
          Branch Sides:
            - BranchSide:      'fuzzer.c:31,15'
              BranchSideFuncs:
                - close
                - io_loop_destroy
                - close
            - BranchSide:      'fuzzer.c:32,6'
              BranchSideFuncs:
                - io_loop_destroy
                - close
        - Branch String:   'fuzzer.c:32,6'
          Branch Sides:
            - BranchSide:      'fuzzer.c:33,15'
              BranchSideFuncs:
                - close
                - io_loop_destroy
            - BranchSide:      'fuzzer.c:34,6'
              BranchSideFuncs:
                - io_loop_destroy
        - Branch String:   'fuzzer.c:34,6'
          Branch Sides:
            - BranchSide:      'fuzzer.c:34,6'
              BranchSideFuncs:
                - io_loop_destroy
            - BranchSide:      'fuzzer.c:35,20'
              BranchSideFuncs:
                - io_loop_destroy
      Callsites:
        - Src:             'fuzzer.c:27,2'
          Dst:             iostream_pump_destroy
        - Src:             'fuzzer.c:31,9'
          Dst:             close
        - Src:             'fuzzer.c:33,9'
          Dst:             close
        - Src:             'fuzzer.c:35,3'
          Dst:             io_loop_destroy
    - functionName:    close
      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:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzzer_init
      functionSourceFile: '/src/dovecot/src/lib-test/fuzzer.c'
      linkageType:     externalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fuzz_ctx
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lib_init
        - lib_is_initialized
        - lib_signals_ignore
        - lib_signals_init
      functionUses:    1
      BranchProfiles:
        - Branch String:   'fuzzer.c:17,6'
          Branch Sides:
            - BranchSide:      'fuzzer.c:17,6'
              BranchSideFuncs: []
            - BranchSide:      'fuzzer.c:18,3'
              BranchSideFuncs:
                - lib_init
                - lib_signals_init
                - lib_signals_ignore
      Callsites:
        - Src:             'fuzzer.c:17,7'
          Dst:             lib_is_initialized
        - Src:             'fuzzer.c:18,3'
          Dst:             lib_init
        - Src:             'fuzzer.c:19,3'
          Dst:             lib_signals_init
        - Src:             'fuzzer.c:20,3'
          Dst:             lib_signals_ignore
    - functionName:    array_lsearch_ptr_idx_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - key
        - idx_r
      BBCount:         14
      ICount:          93
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - array_count_i
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   'array.c:184,2'
          Branch Sides:
            - BranchSide:      'array.c:184,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'array.c:185,28'
              BranchSideFuncs:
                - array_count_i.4287
        - Branch String:   'array.c:188,2'
          Branch Sides:
            - BranchSide:      'array.c:189,7'
              BranchSideFuncs: []
            - BranchSide:      'array.c:194,2'
              BranchSideFuncs: []
        - Branch String:   'array.c:189,7'
          Branch Sides:
            - BranchSide:      'array.c:190,13'
              BranchSideFuncs: []
            - BranchSide:      'array.c:193,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'array.c:184,2'
          Dst:             i_panic
        - Src:             'array.c:186,26'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_lsearch_ptr_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - key
      BBCount:         14
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - array_count_i
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'array.c:170,2'
          Branch Sides:
            - BranchSide:      'array.c:170,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'array.c:171,28'
              BranchSideFuncs:
                - array_count_i.4287
        - Branch String:   'array.c:174,2'
          Branch Sides:
            - BranchSide:      'array.c:175,7'
              BranchSideFuncs: []
            - BranchSide:      'array.c:178,2'
              BranchSideFuncs: []
        - Branch String:   'array.c:175,7'
          Branch Sides:
            - BranchSide:      'array.c:176,11'
              BranchSideFuncs: []
            - BranchSide:      'array.c:177,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'array.c:170,2'
          Dst:             i_panic
        - Src:             'array.c:172,26'
          Dst:             array_count_i
    - functionName:    array_lsearch_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - key
        - cmp
      BBCount:         10
      ICount:          89
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_count_i
      functionUses:    8
      BranchProfiles:
        - Branch String:   'array.c:159,2'
          Branch Sides:
            - BranchSide:      'array.c:160,7'
              BranchSideFuncs:
                - array_count_i.4287
            - BranchSide:      'array.c:165,2'
              BranchSideFuncs: []
        - Branch String:   'array.c:160,7'
          Branch Sides:
            - BranchSide:      'array.c:161,11'
              BranchSideFuncs: []
            - BranchSide:      'array.c:163,2'
              BranchSideFuncs:
                - array_count_i.4287
      Callsites:
        - Src:             'array.c:159,22'
          Dst:             array_count_i
    - functionName:    array_bsearch_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - key
        - cmp
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
        - bsearch
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'array.c:147,10'
          Dst:             array_count_i
        - Src:             'array.c:148,9'
          Dst:             bsearch
    - functionName:    bsearch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_sort_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - cmp
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - buffer_get_modifiable_data
        - qsort
      functionUses:    7
      BranchProfiles:
        - Branch String:   'array.c:136,6'
          Branch Sides:
            - BranchSide:      'array.c:137,3'
              BranchSideFuncs: []
            - BranchSide:      'array.c:138,35'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - qsort
      Callsites:
        - Src:             'array.c:135,10'
          Dst:             array_count_i
        - Src:             'array.c:138,8'
          Dst:             buffer_get_modifiable_data
        - Src:             'array.c:138,2'
          Dst:             qsort
    - functionName:    qsort
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    array_reverse_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         7
      ICount:          107
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - buffer_get_modifiable_data
        - i_memcpy
        - t_buffer_get
      functionUses:    0
      BranchProfiles:
        - Branch String:   'array.c:121,2'
          Branch Sides:
            - BranchSide:      'array.c:122,3'
              BranchSideFuncs:
                - i_memcpy.4294
                - i_memcpy.4294
                - i_memcpy.4294
            - BranchSide:      'array.c:129,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'array.c:115,26'
          Dst:             array_count_i
        - Src:             'array.c:119,9'
          Dst:             buffer_get_modifiable_data
        - Src:             'array.c:120,8'
          Dst:             t_buffer_get
        - Src:             'array.c:122,3'
          Dst:             i_memcpy
        - Src:             'array.c:123,3'
          Dst:             i_memcpy
        - Src:             'array.c:126,3'
          Dst:             i_memcpy
    - functionName:    array_equal_fn_ctx_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array1
        - array2
        - cmp
        - context
      BBCount:         26
      ICount:          182
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - array_count_i
        - array_is_created_i
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'array.c:91,34'
          Branch Sides:
            - BranchSide:      'array.c:91,37'
              BranchSideFuncs:
                - array_is_created_i.4298
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
                - array_is_created_i.4298
            - BranchSide:      'array.c:92,30'
              BranchSideFuncs:
                - array_is_created_i.4298
        - Branch String:   'array.c:91,6'
          Branch Sides:
            - BranchSide:      'array.c:92,30'
              BranchSideFuncs:
                - array_is_created_i.4298
            - BranchSide:      'array.c:94,26'
              BranchSideFuncs:
                - array_is_created_i.4298
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
        - Branch String:   'array.c:92,38'
          Branch Sides:
            - BranchSide:      'array.c:92,41'
              BranchSideFuncs: []
            - BranchSide:      'array.c:92,3'
              BranchSideFuncs: []
        - Branch String:   'array.c:94,6'
          Branch Sides:
            - BranchSide:      'array.c:95,3'
              BranchSideFuncs:
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
            - BranchSide:      'array.c:97,25'
              BranchSideFuncs:
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
        - Branch String:   'array.c:98,6'
          Branch Sides:
            - BranchSide:      'array.c:99,3'
              BranchSideFuncs: []
            - BranchSide:      'array.c:101,9'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'array.c:102,2'
          Branch Sides:
            - BranchSide:      'array.c:102,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'array.c:104,9'
              BranchSideFuncs: []
        - Branch String:   'array.c:104,2'
          Branch Sides:
            - BranchSide:      'array.c:105,7'
              BranchSideFuncs: []
            - BranchSide:      'array.c:109,2'
              BranchSideFuncs: []
        - Branch String:   'array.c:105,7'
          Branch Sides:
            - BranchSide:      'array.c:107,4'
              BranchSideFuncs: []
            - BranchSide:      'array.c:108,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'array.c:91,7'
          Dst:             array_is_created_i
        - Src:             'array.c:92,11'
          Dst:             array_is_created_i
        - Src:             'array.c:94,7'
          Dst:             array_is_created_i
        - Src:             'array.c:97,11'
          Dst:             array_count_i
        - Src:             'array.c:97,43'
          Dst:             array_count_i
        - Src:             'array.c:102,2'
          Dst:             i_panic
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_equal_fn_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array1
        - array2
        - cmp
      BBCount:         26
      ICount:          178
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - array_count_i
        - array_is_created_i
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'array.c:63,34'
          Branch Sides:
            - BranchSide:      'array.c:63,37'
              BranchSideFuncs:
                - array_is_created_i.4298
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
                - array_is_created_i.4298
            - BranchSide:      'array.c:64,30'
              BranchSideFuncs:
                - array_is_created_i.4298
        - Branch String:   'array.c:63,6'
          Branch Sides:
            - BranchSide:      'array.c:64,30'
              BranchSideFuncs:
                - array_is_created_i.4298
            - BranchSide:      'array.c:66,26'
              BranchSideFuncs:
                - array_is_created_i.4298
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
        - Branch String:   'array.c:64,38'
          Branch Sides:
            - BranchSide:      'array.c:64,41'
              BranchSideFuncs: []
            - BranchSide:      'array.c:64,3'
              BranchSideFuncs: []
        - Branch String:   'array.c:66,6'
          Branch Sides:
            - BranchSide:      'array.c:67,3'
              BranchSideFuncs:
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
            - BranchSide:      'array.c:69,25'
              BranchSideFuncs:
                - array_count_i.4287
                - array_count_i.4287
                - i_panic
        - Branch String:   'array.c:70,6'
          Branch Sides:
            - BranchSide:      'array.c:71,3'
              BranchSideFuncs: []
            - BranchSide:      'array.c:73,9'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'array.c:74,2'
          Branch Sides:
            - BranchSide:      'array.c:74,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'array.c:76,9'
              BranchSideFuncs: []
        - Branch String:   'array.c:76,2'
          Branch Sides:
            - BranchSide:      'array.c:77,7'
              BranchSideFuncs: []
            - BranchSide:      'array.c:81,2'
              BranchSideFuncs: []
        - Branch String:   'array.c:77,7'
          Branch Sides:
            - BranchSide:      'array.c:79,4'
              BranchSideFuncs: []
            - BranchSide:      'array.c:80,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'array.c:63,7'
          Dst:             array_is_created_i
        - Src:             'array.c:64,11'
          Dst:             array_is_created_i
        - Src:             'array.c:66,7'
          Dst:             array_is_created_i
        - Src:             'array.c:69,11'
          Dst:             array_count_i
        - Src:             'array.c:69,43'
          Dst:             array_count_i
        - Src:             'array.c:74,2'
          Dst:             i_panic
    - functionName:    array_cmp_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array1
        - array2
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_is_created_i
        - buffer_cmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'array.c:48,34'
          Branch Sides:
            - BranchSide:      'array.c:48,37'
              BranchSideFuncs:
                - array_is_created_i.4298
                - buffer_cmp
                - array_is_created_i.4298
            - BranchSide:      'array.c:49,30'
              BranchSideFuncs:
                - array_is_created_i.4298
        - Branch String:   'array.c:48,6'
          Branch Sides:
            - BranchSide:      'array.c:49,30'
              BranchSideFuncs:
                - array_is_created_i.4298
            - BranchSide:      'array.c:51,26'
              BranchSideFuncs:
                - array_is_created_i.4298
                - buffer_cmp
        - Branch String:   'array.c:49,38'
          Branch Sides:
            - BranchSide:      'array.c:49,41'
              BranchSideFuncs: []
            - BranchSide:      'array.c:49,3'
              BranchSideFuncs: []
        - Branch String:   'array.c:51,6'
          Branch Sides:
            - BranchSide:      'array.c:52,3'
              BranchSideFuncs:
                - buffer_cmp
            - BranchSide:      'array.c:54,20'
              BranchSideFuncs:
                - buffer_cmp
      Callsites:
        - Src:             'array.c:48,7'
          Dst:             array_is_created_i
        - Src:             'array.c:49,11'
          Dst:             array_is_created_i
        - Src:             'array.c:51,7'
          Dst:             array_is_created_i
        - Src:             'array.c:54,9'
          Dst:             buffer_cmp
    - functionName:    array_insert_space_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_copy
        - buffer_get_space_unsafe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'array.c:38,2'
          Dst:             buffer_copy
        - Src:             'array.c:41,9'
          Dst:             buffer_get_space_unsafe
    - functionName:    array_idx_clear_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_write_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'array.c:28,2'
          Dst:             buffer_write_zero
    - functionName:    array_idx_set_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - idx
        - data
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_write
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'array.c:22,2'
          Dst:             buffer_write
    - functionName:    array_idx_get_space_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_get_space_unsafe
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'array.c:16,9'
          Dst:             buffer_get_space_unsafe
    - functionName:    array_idx_modifiable_i
      functionSourceFile: '/src/dovecot/src/lib/array.c'
      linkageType:     externalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 11
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    9
      BranchProfiles:
        - Branch String:   'array.c:10,2'
          Branch Sides:
            - BranchSide:      'array.c:10,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'array.c:10,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'array.c:10,2'
          Dst:             i_panic
    - functionName:    base64_encode_init
      functionSourceFile: '/src/dovecot/src/lib/./base64.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - enc
        - b64
        - flags
        - max_line_len
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './base64.h:68,23'
          Branch Sides:
            - BranchSide:      './base64.h:68,23'
              BranchSideFuncs: []
            - BranchSide:      './base64.h:68,54'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    t_base64_scheme_decode
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - b64
        - flags
        - src
        - src_size
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - base64_scheme_decode
        - buffer_create_dynamic
        - pool_datastack_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'base64.c:861,8'
          Dst:             pool_datastack_create
        - Src:             'base64.c:861,8'
          Dst:             buffer_create_dynamic
        - Src:             'base64.c:862,8'
          Dst:             base64_scheme_decode
    - functionName:    base64_scheme_decode
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 843
      functionLinenumberEnd: 852
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - b64
        - flags
        - src
        - src_size
        - dest
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - base64_decode_finish
        - base64_decode_init
        - base64_decode_more
      functionUses:    1
      BranchProfiles:
        - Branch String:   'base64.c:849,6'
          Branch Sides:
            - BranchSide:      'base64.c:849,6'
              BranchSideFuncs:
                - base64_decode_finish
            - BranchSide:      'base64.c:850,9'
              BranchSideFuncs:
                - base64_decode_finish
      Callsites:
        - Src:             'base64.c:847,2'
          Dst:             base64_decode_init
        - Src:             'base64.c:848,8'
          Dst:             base64_decode_more
        - Src:             'base64.c:850,9'
          Dst:             base64_decode_finish
    - functionName:    base64_decode_init
      functionSourceFile: '/src/dovecot/src/lib/./base64.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - dec
        - b64
        - flags
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    base64_decode_more
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dec
        - src
        - src_size
        - src_pos_r
        - dest
      BBCount:         127
      ICount:          848
      EdgeCount:       158
      CyclomaticComplexity: 33
      functionsReached:
        - base64_skip_whitespace
        - buffer_append_c
        - buffer_get_avail_size
        - i_panic
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'base64.c:617,2'
          Branch Sides:
            - BranchSide:      'base64.c:617,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:618,2'
              BranchSideFuncs:
                - buffer_get_avail_size
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - i_panic
        - Branch String:   'base64.c:618,2'
          Branch Sides:
            - BranchSide:      'base64.c:618,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:620,6'
              BranchSideFuncs:
                - buffer_get_avail_size
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
                - i_panic
                - base64_skip_whitespace
        - Branch String:   'base64.c:620,6'
          Branch Sides:
            - BranchSide:      'base64.c:622,7'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:628,10'
              BranchSideFuncs:
                - buffer_get_avail_size
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
                - i_panic
                - base64_skip_whitespace
        - Branch String:   'base64.c:622,7'
          Branch Sides:
            - BranchSide:      'base64.c:623,5'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:624,3'
              BranchSideFuncs: []
        - Branch String:   'base64.c:629,6'
          Branch Sides:
            - BranchSide:      'base64.c:631,26'
              BranchSideFuncs:
                - base64_skip_whitespace
            - BranchSide:      'base64.c:650,6'
              BranchSideFuncs:
                - buffer_get_avail_size
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'base64.c:632,7'
          Branch Sides:
            - BranchSide:      'base64.c:633,17'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:634,7'
              BranchSideFuncs: []
        - Branch String:   'base64.c:634,7'
          Branch Sides:
            - BranchSide:      'base64.c:635,9'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:642,7'
              BranchSideFuncs: []
        - Branch String:   'base64.c:635,8'
          Branch Sides:
            - BranchSide:      'base64.c:636,5'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:639,4'
              BranchSideFuncs: []
        - Branch String:   'base64.c:642,7'
          Branch Sides:
            - BranchSide:      'base64.c:643,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:647,3'
              BranchSideFuncs: []
        - Branch String:   'base64.c:650,6'
          Branch Sides:
            - BranchSide:      'base64.c:651,7'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:656,36'
              BranchSideFuncs:
                - buffer_get_avail_size
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'base64.c:651,7'
          Branch Sides:
            - BranchSide:      'base64.c:652,5'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:653,3'
              BranchSideFuncs: []
        - Branch String:   'base64.c:657,6'
          Branch Sides:
            - BranchSide:      'base64.c:658,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:663,2'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:658,3'
          Branch Sides:
            - BranchSide:      'base64.c:658,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:659,4'
              BranchSideFuncs: []
        - Branch String:   'base64.c:663,28'
          Branch Sides:
            - BranchSide:      'base64.c:663,2'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:663,31'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:663,2'
          Branch Sides:
            - BranchSide:      'base64.c:664,22'
              BranchSideFuncs:
                - buffer_append_c
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:716,6'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
        - Branch String:   'base64.c:667,7'
          Branch Sides:
            - BranchSide:      'base64.c:668,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:679,7'
              BranchSideFuncs:
                - buffer_append_c
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:668,8'
          Branch Sides:
            - BranchSide:      'base64.c:669,9'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
            - BranchSide:      'base64.c:672,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:672,8'
          Branch Sides:
            - BranchSide:      'base64.c:672,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:672,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:672,8'
          Branch Sides:
            - BranchSide:      'base64.c:672,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:672,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:672,8'
          Branch Sides:
            - BranchSide:      'base64.c:672,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:672,8'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:672,8'
          Branch Sides:
            - BranchSide:      'base64.c:673,9'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
            - BranchSide:      'base64.c:676,4'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:679,7'
          Branch Sides:
            - BranchSide:      'base64.c:680,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:685,11'
              BranchSideFuncs:
                - buffer_append_c
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - i_unreached
        - Branch String:   'base64.c:680,4'
          Branch Sides:
            - BranchSide:      'base64.c:680,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:681,17'
              BranchSideFuncs: []
        - Branch String:   'base64.c:685,3'
          Branch Sides:
            - BranchSide:      'base64.c:687,15'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:691,16'
              BranchSideFuncs:
                - buffer_append_c
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:698,17'
              BranchSideFuncs:
                - buffer_append_c
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:705,17'
              BranchSideFuncs:
                - buffer_append_c
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
                - base64_skip_whitespace
                - buffer_append_c
                - buffer_append_c
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:712,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:716,6'
          Branch Sides:
            - BranchSide:      'base64.c:718,26'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:726,6'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
        - Branch String:   'base64.c:719,7'
          Branch Sides:
            - BranchSide:      'base64.c:720,8'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:724,2'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
        - Branch String:   'base64.c:720,8'
          Branch Sides:
            - BranchSide:      'base64.c:721,18'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:722,4'
              BranchSideFuncs: []
        - Branch String:   'base64.c:726,24'
          Branch Sides:
            - BranchSide:      'base64.c:726,27'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:728,3'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
        - Branch String:   'base64.c:726,6'
          Branch Sides:
            - BranchSide:      'base64.c:728,3'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:791,6'
              BranchSideFuncs: []
        - Branch String:   'base64.c:728,3'
          Branch Sides:
            - BranchSide:      'base64.c:728,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:730,7'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
                - i_panic
        - Branch String:   'base64.c:730,7'
          Branch Sides:
            - BranchSide:      'base64.c:732,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:735,12'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
        - Branch String:   'base64.c:732,4'
          Branch Sides:
            - BranchSide:      'base64.c:732,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:733,8'
              BranchSideFuncs: []
        - Branch String:   'base64.c:735,4'
          Branch Sides:
            - BranchSide:      'base64.c:739,9'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:739,9'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:742,9'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
            - BranchSide:      'base64.c:763,9'
              BranchSideFuncs:
                - base64_skip_whitespace
        - Branch String:   'base64.c:742,9'
          Branch Sides:
            - BranchSide:      'base64.c:744,10'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:747,5'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
        - Branch String:   'base64.c:750,9'
          Branch Sides:
            - BranchSide:      'base64.c:751,10'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:755,28'
              BranchSideFuncs:
                - base64_skip_whitespace
                - base64_skip_whitespace
        - Branch String:   'base64.c:757,9'
          Branch Sides:
            - BranchSide:      'base64.c:757,20'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:758,10'
              BranchSideFuncs: []
        - Branch String:   'base64.c:763,9'
          Branch Sides:
            - BranchSide:      'base64.c:765,10'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:768,5'
              BranchSideFuncs:
                - base64_skip_whitespace
        - Branch String:   'base64.c:775,9'
          Branch Sides:
            - BranchSide:      'base64.c:776,10'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:779,9'
              BranchSideFuncs: []
        - Branch String:   'base64.c:779,9'
          Branch Sides:
            - BranchSide:      'base64.c:780,6'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:784,10'
              BranchSideFuncs: []
        - Branch String:   'base64.c:791,6'
          Branch Sides:
            - BranchSide:      'base64.c:792,8'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:799,6'
              BranchSideFuncs: []
        - Branch String:   'base64.c:792,7'
          Branch Sides:
            - BranchSide:      'base64.c:793,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:795,4'
              BranchSideFuncs: []
        - Branch String:   'base64.c:799,6'
          Branch Sides:
            - BranchSide:      'base64.c:800,16'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:801,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:617,2'
          Dst:             i_panic
        - Src:             'base64.c:618,2'
          Dst:             i_panic
        - Src:             'base64.c:631,3'
          Dst:             base64_skip_whitespace
        - Src:             'base64.c:656,14'
          Dst:             buffer_get_avail_size
        - Src:             'base64.c:658,3'
          Dst:             i_panic
        - Src:             'base64.c:680,4'
          Dst:             i_panic
        - Src:             'base64.c:692,4'
          Dst:             buffer_append_c
        - Src:             'base64.c:699,4'
          Dst:             buffer_append_c
        - Src:             'base64.c:706,4'
          Dst:             buffer_append_c
        - Src:             'base64.c:712,4'
          Dst:             i_unreached
        - Src:             'base64.c:718,3'
          Dst:             base64_skip_whitespace
        - Src:             'base64.c:728,3'
          Dst:             i_panic
        - Src:             'base64.c:732,4'
          Dst:             i_panic
        - Src:             'base64.c:755,5'
          Dst:             base64_skip_whitespace
        - Src:             'base64.c:773,5'
          Dst:             base64_skip_whitespace
    - functionName:    base64_decode_finish
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 805
      functionLinenumberEnd: 821
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - dec
      BBCount:         18
      ICount:          113
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'base64.c:806,2'
          Branch Sides:
            - BranchSide:      'base64.c:806,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:807,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:809,6'
          Branch Sides:
            - BranchSide:      'base64.c:810,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:812,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:812,6'
          Branch Sides:
            - BranchSide:      'base64.c:814,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:817,6'
              BranchSideFuncs: []
        - Branch String:   'base64.c:814,3'
          Branch Sides:
            - BranchSide:      'base64.c:814,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:815,3'
              BranchSideFuncs: []
        - Branch String:   'base64.c:817,6'
          Branch Sides:
            - BranchSide:      'base64.c:819,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:820,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:806,2'
          Dst:             i_panic
        - Src:             'base64.c:814,3'
          Dst:             i_panic
    - functionName:    base64_skip_whitespace
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - dec
        - src_c
        - src_size
        - src_pos
      BBCount:         17
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'base64.c:594,6'
          Branch Sides:
            - BranchSide:      'base64.c:595,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:598,2'
              BranchSideFuncs: []
        - Branch String:   'base64.c:598,31'
          Branch Sides:
            - BranchSide:      'base64.c:598,34'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:598,2'
              BranchSideFuncs: []
        - Branch String:   'base64.c:598,2'
          Branch Sides:
            - BranchSide:      'base64.c:598,2'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:599,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    base64_scheme_encode
      functionSourceFile: '/src/dovecot/src/lib/./base64.h'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - b64
        - flags
        - max_line_len
        - src
        - src_size
        - dest
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - base64_encode_finish
        - base64_encode_init
        - base64_encode_more
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './base64.h:216,2'
          Dst:             base64_encode_init
        - Src:             './base64.h:217,2'
          Dst:             base64_encode_more
        - Src:             './base64.h:218,2'
          Dst:             base64_encode_finish
    - functionName:    base64_encode_more
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - enc
        - src
        - src_size
        - src_pos_r
        - dest
      BBCount:         80
      ICount:          495
      EdgeCount:       92
      CyclomaticComplexity: 14
      functionsReached:
        - base64_encode_more_data
        - buffer_append
        - buffer_append_c
        - buffer_get_avail_size
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'base64.c:384,2'
          Branch Sides:
            - BranchSide:      'base64.c:384,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:385,2'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - i_panic
        - Branch String:   'base64.c:385,2'
          Branch Sides:
            - BranchSide:      'base64.c:385,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:387,18'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
        - Branch String:   'base64.c:389,2'
          Branch Sides:
            - BranchSide:      'base64.c:393,37'
              BranchSideFuncs:
                - buffer_get_avail_size
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
            - BranchSide:      'base64.c:451,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:394,7'
          Branch Sides:
            - BranchSide:      'base64.c:395,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:398,7'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
        - Branch String:   'base64.c:398,7'
          Branch Sides:
            - BranchSide:      'base64.c:399,4'
              BranchSideFuncs:
                - buffer_append_c
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:407,3'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:399,4'
          Branch Sides:
            - BranchSide:      'base64.c:399,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:400,20'
              BranchSideFuncs:
                - buffer_append_c
                - i_panic
                - buffer_get_avail_size
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:403,8'
          Branch Sides:
            - BranchSide:      'base64.c:404,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:405,3'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:407,3'
          Branch Sides:
            - BranchSide:      'base64.c:407,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:408,3'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:408,3'
          Branch Sides:
            - BranchSide:      'base64.c:408,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:409,16'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:409,16'
          Branch Sides:
            - BranchSide:      'base64.c:409,14'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:409,14'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:412,7'
          Branch Sides:
            - BranchSide:      'base64.c:413,14'
              BranchSideFuncs:
                - base64_encode_more_data
                - i_panic
                - buffer_get_avail_size
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:430,7'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
        - Branch String:   'base64.c:416,4'
          Branch Sides:
            - BranchSide:      'base64.c:416,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:417,13'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:419,4'
          Branch Sides:
            - BranchSide:      'base64.c:419,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:420,14'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:422,4'
          Branch Sides:
            - BranchSide:      'base64.c:422,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:423,4'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - i_panic
                - i_panic
        - Branch String:   'base64.c:423,4'
          Branch Sides:
            - BranchSide:      'base64.c:423,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:424,4'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
                - i_panic
        - Branch String:   'base64.c:424,4'
          Branch Sides:
            - BranchSide:      'base64.c:424,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:426,25'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
        - Branch String:   'base64.c:430,7'
          Branch Sides:
            - BranchSide:      'base64.c:431,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:433,7'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
        - Branch String:   'base64.c:433,20'
          Branch Sides:
            - BranchSide:      'base64.c:389,2'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
            - BranchSide:      'base64.c:433,23'
              BranchSideFuncs:
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append_c
                - buffer_append
        - Branch String:   'base64.c:433,7'
          Branch Sides:
            - BranchSide:      'base64.c:389,2'
              BranchSideFuncs:
                - buffer_append_c
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append
            - BranchSide:      'base64.c:434,8'
              BranchSideFuncs:
                - buffer_append_c
                - i_panic
                - buffer_get_avail_size
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append_c
                - buffer_append
        - Branch String:   'base64.c:434,8'
          Branch Sides:
            - BranchSide:      'base64.c:435,9'
              BranchSideFuncs:
                - buffer_append_c
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
                - buffer_append
            - BranchSide:      'base64.c:445,21'
              BranchSideFuncs:
                - buffer_append_c
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
        - Branch String:   'base64.c:435,9'
          Branch Sides:
            - BranchSide:      'base64.c:437,20'
              BranchSideFuncs:
                - buffer_append
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - buffer_append_c
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
            - BranchSide:      'base64.c:440,22'
              BranchSideFuncs:
                - buffer_append_c
                - i_panic
                - buffer_get_avail_size
                - buffer_append_c
                - buffer_append
                - base64_encode_more_data
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - buffer_append_c
                - i_panic
        - Branch String:   'base64.c:451,2'
          Branch Sides:
            - BranchSide:      'base64.c:451,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:452,13'
              BranchSideFuncs: []
        - Branch String:   'base64.c:453,6'
          Branch Sides:
            - BranchSide:      'base64.c:453,6'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:454,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:384,2'
          Dst:             i_panic
        - Src:             'base64.c:385,2'
          Dst:             i_panic
        - Src:             'base64.c:393,15'
          Dst:             buffer_get_avail_size
        - Src:             'base64.c:399,4'
          Dst:             i_panic
        - Src:             'base64.c:400,4'
          Dst:             buffer_append_c
        - Src:             'base64.c:407,3'
          Dst:             i_panic
        - Src:             'base64.c:408,3'
          Dst:             i_panic
        - Src:             'base64.c:414,4'
          Dst:             base64_encode_more_data
        - Src:             'base64.c:416,4'
          Dst:             i_panic
        - Src:             'base64.c:419,4'
          Dst:             i_panic
        - Src:             'base64.c:422,4'
          Dst:             i_panic
        - Src:             'base64.c:423,4'
          Dst:             i_panic
        - Src:             'base64.c:424,4'
          Dst:             i_panic
        - Src:             'base64.c:437,6'
          Dst:             buffer_append
        - Src:             'base64.c:440,6'
          Dst:             buffer_append_c
        - Src:             'base64.c:445,5'
          Dst:             buffer_append_c
        - Src:             'base64.c:451,2'
          Dst:             i_panic
    - functionName:    base64_encode_finish
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - enc
        - dest
      BBCount:         112
      ICount:          831
      EdgeCount:       134
      CyclomaticComplexity: 24
      functionsReached:
        - buffer_append_space_unsafe
        - buffer_get_avail_size
        - i_memcpy
        - i_panic
        - i_unreached
      functionUses:    2
      BranchProfiles:
        - Branch String:   'base64.c:468,2'
          Branch Sides:
            - BranchSide:      'base64.c:468,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:469,2'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_panic
                - buffer_get_avail_size
        - Branch String:   'base64.c:472,6'
          Branch Sides:
            - BranchSide:      'base64.c:473,37'
              BranchSideFuncs:
                - buffer_get_avail_size
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:475,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:475,25'
          Branch Sides:
            - BranchSide:      'base64.c:475,28'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:476,7'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:475,6'
          Branch Sides:
            - BranchSide:      'base64.c:476,7'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:481,2'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'base64.c:476,7'
          Branch Sides:
            - BranchSide:      'base64.c:477,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:478,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:478,3'
          Branch Sides:
            - BranchSide:      'base64.c:478,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:479,2'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'base64.c:481,2'
          Branch Sides:
            - BranchSide:      'base64.c:481,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:482,2'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:482,2'
          Branch Sides:
            - BranchSide:      'base64.c:482,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:483,15'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
        - Branch String:   'base64.c:485,2'
          Branch Sides:
            - BranchSide:      'base64.c:487,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:489,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:499,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:508,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:489,3'
          Branch Sides:
            - BranchSide:      'base64.c:489,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:490,32'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:492,7'
          Branch Sides:
            - BranchSide:      'base64.c:493,4'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:497,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:499,3'
          Branch Sides:
            - BranchSide:      'base64.c:499,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:500,32'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:502,7'
          Branch Sides:
            - BranchSide:      'base64.c:503,4'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:506,3'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:513,6'
          Branch Sides:
            - BranchSide:      'base64.c:514,13'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:515,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:515,35'
          Branch Sides:
            - BranchSide:      'base64.c:515,38'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:521,16'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:515,6'
          Branch Sides:
            - BranchSide:      'base64.c:518,11'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:521,16'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:518,11'
          Branch Sides:
            - BranchSide:      'base64.c:524,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:524,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:524,6'
          Branch Sides:
            - BranchSide:      'base64.c:525,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:529,2'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:529,2'
          Branch Sides:
            - BranchSide:      'base64.c:529,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:530,6'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
        - Branch String:   'base64.c:530,6'
          Branch Sides:
            - BranchSide:      'base64.c:531,16'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
            - BranchSide:      'base64.c:533,35'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
        - Branch String:   'base64.c:535,6'
          Branch Sides:
            - BranchSide:      'base64.c:536,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
            - BranchSide:      'base64.c:541,6'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
        - Branch String:   'base64.c:541,6'
          Branch Sides:
            - BranchSide:      'base64.c:542,16'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
            - BranchSide:      'base64.c:543,6'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
        - Branch String:   'base64.c:543,6'
          Branch Sides:
            - BranchSide:      'base64.c:544,3'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:548,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:548,19'
          Branch Sides:
            - BranchSide:      'base64.c:548,22'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:548,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:548,2'
          Branch Sides:
            - BranchSide:      'base64.c:549,3'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:571,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:550,7'
          Branch Sides:
            - BranchSide:      'base64.c:551,4'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:558,3'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:553,8'
          Branch Sides:
            - BranchSide:      'base64.c:554,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:557,3'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:560,7'
          Branch Sides:
            - BranchSide:      'base64.c:561,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:563,11'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:563,11'
          Branch Sides:
            - BranchSide:      'base64.c:563,9'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:563,9'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:564,11'
          Branch Sides:
            - BranchSide:      'base64.c:564,9'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:564,9'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:569,3'
          Branch Sides:
            - BranchSide:      'base64.c:548,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:569,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:571,2'
          Branch Sides:
            - BranchSide:      'base64.c:571,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:572,6'
              BranchSideFuncs: []
        - Branch String:   'base64.c:572,6'
          Branch Sides:
            - BranchSide:      'base64.c:573,21'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:577,6'
              BranchSideFuncs: []
        - Branch String:   'base64.c:577,6'
          Branch Sides:
            - BranchSide:      'base64.c:578,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:579,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:468,2'
          Dst:             i_panic
        - Src:             'base64.c:473,15'
          Dst:             buffer_get_avail_size
        - Src:             'base64.c:478,3'
          Dst:             i_panic
        - Src:             'base64.c:481,2'
          Dst:             i_panic
        - Src:             'base64.c:482,2'
          Dst:             i_panic
        - Src:             'base64.c:489,3'
          Dst:             i_panic
        - Src:             'base64.c:499,3'
          Dst:             i_panic
        - Src:             'base64.c:508,3'
          Dst:             i_unreached
        - Src:             'base64.c:529,2'
          Dst:             i_panic
        - Src:             'base64.c:533,8'
          Dst:             buffer_append_space_unsafe
        - Src:             'base64.c:544,3'
          Dst:             i_memcpy
        - Src:             'base64.c:565,3'
          Dst:             i_memcpy
        - Src:             'base64.c:569,3'
          Dst:             i_panic
        - Src:             'base64.c:571,2'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    6
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    base64_encode_more_data
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - enc
        - src_c
        - src_size
        - src_pos_r
        - dst_avail
        - dest
      BBCount:         87
      ICount:          916
      EdgeCount:       97
      CyclomaticComplexity: 12
      functionsReached:
        - base64_encode_get_out_size
        - buffer_append_space_unsafe
        - i_memcpy
        - i_panic
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'base64.c:228,2'
          Branch Sides:
            - BranchSide:      'base64.c:228,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:231,6'
              BranchSideFuncs:
                - base64_encode_get_out_size
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:231,6'
          Branch Sides:
            - BranchSide:      'base64.c:232,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:237,40'
              BranchSideFuncs:
                - base64_encode_get_out_size
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:238,6'
          Branch Sides:
            - BranchSide:      'base64.c:239,14'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:241,37'
              BranchSideFuncs:
                - buffer_append_space_unsafe
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:246,2'
          Branch Sides:
            - BranchSide:      'base64.c:246,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:247,6'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
        - Branch String:   'base64.c:247,6'
          Branch Sides:
            - BranchSide:      'base64.c:248,3'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:252,13'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
                - i_memcpy.4369
        - Branch String:   'base64.c:257,6'
          Branch Sides:
            - BranchSide:      'base64.c:258,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:261,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'base64.c:261,2'
          Branch Sides:
            - BranchSide:      'base64.c:261,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:262,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:262,2'
          Branch Sides:
            - BranchSide:      'base64.c:262,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:265,10'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_unreached
        - Branch String:   'base64.c:266,2'
          Branch Sides:
            - BranchSide:      'base64.c:268,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:270,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:282,12'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:298,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:270,3'
          Branch Sides:
            - BranchSide:      'base64.c:270,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:271,12'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:275,27'
          Branch Sides:
            - BranchSide:      'base64.c:275,30'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:276,4'
              BranchSideFuncs: []
        - Branch String:   'base64.c:275,7'
          Branch Sides:
            - BranchSide:      'base64.c:275,37'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:276,4'
              BranchSideFuncs: []
        - Branch String:   'base64.c:286,7'
          Branch Sides:
            - BranchSide:      'base64.c:287,13'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:291,4'
              BranchSideFuncs: []
        - Branch String:   'base64.c:303,6'
          Branch Sides:
            - BranchSide:      'base64.c:304,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:310,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:304,3'
          Branch Sides:
            - BranchSide:      'base64.c:304,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:305,16'
              BranchSideFuncs: []
        - Branch String:   'base64.c:310,32'
          Branch Sides:
            - BranchSide:      'base64.c:310,36'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:310,2'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:310,2'
          Branch Sides:
            - BranchSide:      'base64.c:312,12'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:322,10'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:322,2'
          Branch Sides:
            - BranchSide:      'base64.c:324,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:328,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:335,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:345,3'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
                - i_panic
        - Branch String:   'base64.c:358,2'
          Branch Sides:
            - BranchSide:      'base64.c:358,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:359,13'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
                - i_panic
        - Branch String:   'base64.c:360,2'
          Branch Sides:
            - BranchSide:      'base64.c:360,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:361,6'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
                - i_memcpy.4369
        - Branch String:   'base64.c:361,6'
          Branch Sides:
            - BranchSide:      'base64.c:362,3'
              BranchSideFuncs:
                - i_memcpy.4369
                - i_panic
            - BranchSide:      'base64.c:366,13'
              BranchSideFuncs:
                - i_panic
                - i_memcpy.4369
        - Branch String:   'base64.c:372,2'
          Branch Sides:
            - BranchSide:      'base64.c:372,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:373,15'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:228,2'
          Dst:             i_panic
        - Src:             'base64.c:237,13'
          Dst:             base64_encode_get_out_size
        - Src:             'base64.c:241,10'
          Dst:             buffer_append_space_unsafe
        - Src:             'base64.c:246,2'
          Dst:             i_panic
        - Src:             'base64.c:248,3'
          Dst:             i_memcpy
        - Src:             'base64.c:253,3'
          Dst:             i_memcpy
        - Src:             'base64.c:261,2'
          Dst:             i_panic
        - Src:             'base64.c:262,2'
          Dst:             i_panic
        - Src:             'base64.c:270,3'
          Dst:             i_panic
        - Src:             'base64.c:298,3'
          Dst:             i_unreached
        - Src:             'base64.c:304,3'
          Dst:             i_panic
        - Src:             'base64.c:358,2'
          Dst:             i_panic
        - Src:             'base64.c:360,2'
          Dst:             i_panic
        - Src:             'base64.c:362,3'
          Dst:             i_memcpy
        - Src:             'base64.c:367,3'
          Dst:             i_memcpy
        - Src:             'base64.c:372,2'
          Dst:             i_panic
    - functionName:    base64_encode_get_out_size
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - enc
        - src_size
      BBCount:         25
      ICount:          147
      EdgeCount:       25
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_unreached
      functionUses:    2
      BranchProfiles:
        - Branch String:   'base64.c:60,2'
          Branch Sides:
            - BranchSide:      'base64.c:60,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:62,6'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:62,6'
          Branch Sides:
            - BranchSide:      'base64.c:63,10'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:66,10'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:66,2'
          Branch Sides:
            - BranchSide:      'base64.c:68,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:70,11'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:76,12'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:80,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:72,7'
          Branch Sides:
            - BranchSide:      'base64.c:72,19'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:73,11'
              BranchSideFuncs: []
        - Branch String:   'base64.c:84,6'
          Branch Sides:
            - BranchSide:      'base64.c:85,10'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:88,16'
              BranchSideFuncs: []
        - Branch String:   'base64.c:89,2'
          Branch Sides:
            - BranchSide:      'base64.c:91,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:93,12'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:96,12'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:99,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:60,2'
          Dst:             i_panic
        - Src:             'base64.c:80,3'
          Dst:             i_unreached
    - functionName:    t_base64_scheme_encode
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 836
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - b64
        - flags
        - max_line_len
        - src
        - src_size
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - base64_scheme_encode
        - buffer_create_dynamic
        - pool_datastack_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'base64.c:834,15'
          Dst:             pool_datastack_create
        - Src:             'base64.c:834,15'
          Dst:             buffer_create_dynamic
        - Src:             'base64.c:835,9'
          Dst:             base64_scheme_encode
    - functionName:    base64_encode_get_full_space
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - enc
        - dst_space
      BBCount:         44
      ICount:          292
      EdgeCount:       49
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'base64.c:150,2'
          Branch Sides:
            - BranchSide:      'base64.c:150,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:152,6'
              BranchSideFuncs:
                - i_unreached
                - i_panic
        - Branch String:   'base64.c:152,6'
          Branch Sides:
            - BranchSide:      'base64.c:157,3'
              BranchSideFuncs:
                - i_unreached
                - i_panic
            - BranchSide:      'base64.c:169,6'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:157,3'
          Branch Sides:
            - BranchSide:      'base64.c:157,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:158,20'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:164,7'
          Branch Sides:
            - BranchSide:      'base64.c:165,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:166,16'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:169,6'
          Branch Sides:
            - BranchSide:      'base64.c:170,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:171,15'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:173,6'
          Branch Sides:
            - BranchSide:      'base64.c:174,12'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'base64.c:175,6'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:175,6'
          Branch Sides:
            - BranchSide:      'base64.c:176,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:179,10'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:179,2'
          Branch Sides:
            - BranchSide:      'base64.c:181,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:183,12'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:187,7'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:193,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:187,7'
          Branch Sides:
            - BranchSide:      'base64.c:188,11'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:189,13'
              BranchSideFuncs: []
        - Branch String:   'base64.c:196,6'
          Branch Sides:
            - BranchSide:      'base64.c:197,10'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:199,15'
              BranchSideFuncs: []
        - Branch String:   'base64.c:200,6'
          Branch Sides:
            - BranchSide:      'base64.c:201,11'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:214,9'
              BranchSideFuncs: []
        - Branch String:   'base64.c:201,3'
          Branch Sides:
            - BranchSide:      'base64.c:204,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:204,4'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:206,14'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:209,14'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:212,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:150,2'
          Dst:             i_panic
        - Src:             'base64.c:157,3'
          Dst:             i_panic
        - Src:             'base64.c:193,3'
          Dst:             i_unreached
    - functionName:    base64_encode_get_size
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - enc
        - src_size
      BBCount:         24
      ICount:          168
      EdgeCount:       26
      CyclomaticComplexity: 4
      functionsReached:
        - base64_encode_get_out_size
        - i_panic
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'base64.c:107,6'
          Branch Sides:
            - BranchSide:      'base64.c:109,11'
              BranchSideFuncs:
                - i_panic
                - i_unreached
            - BranchSide:      'base64.c:123,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:109,3'
          Branch Sides:
            - BranchSide:      'base64.c:111,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:113,13'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:116,13'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:119,4'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'base64.c:123,6'
          Branch Sides:
            - BranchSide:      'base64.c:127,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:136,6'
              BranchSideFuncs: []
        - Branch String:   'base64.c:127,3'
          Branch Sides:
            - BranchSide:      'base64.c:127,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:128,11'
              BranchSideFuncs: []
        - Branch String:   'base64.c:130,7'
          Branch Sides:
            - BranchSide:      'base64.c:131,9'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:133,15'
              BranchSideFuncs: []
        - Branch String:   'base64.c:136,6'
          Branch Sides:
            - BranchSide:      'base64.c:136,6'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:137,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:105,20'
          Dst:             base64_encode_get_out_size
        - Src:             'base64.c:119,4'
          Dst:             i_unreached
        - Src:             'base64.c:127,3'
          Dst:             i_panic
    - functionName:    base64_get_full_encoded_size
      functionSourceFile: '/src/dovecot/src/lib/base64.c'
      linkageType:     externalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - enc
        - src_size
      BBCount:         32
      ICount:          197
      EdgeCount:       35
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'base64.c:19,6'
          Branch Sides:
            - BranchSide:      'base64.c:20,3'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:23,13'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'base64.c:24,6'
          Branch Sides:
            - BranchSide:      'base64.c:25,11'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:39,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:25,3'
          Branch Sides:
            - BranchSide:      'base64.c:27,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:29,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:33,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'base64.c:37,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:29,4'
          Branch Sides:
            - BranchSide:      'base64.c:29,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:30,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:33,4'
          Branch Sides:
            - BranchSide:      'base64.c:33,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:34,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'base64.c:39,6'
          Branch Sides:
            - BranchSide:      'base64.c:41,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:52,9'
              BranchSideFuncs: []
        - Branch String:   'base64.c:41,3'
          Branch Sides:
            - BranchSide:      'base64.c:41,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'base64.c:42,15'
              BranchSideFuncs: []
        - Branch String:   'base64.c:45,7'
          Branch Sides:
            - BranchSide:      'base64.c:46,12'
              BranchSideFuncs: []
            - BranchSide:      'base64.c:49,15'
              BranchSideFuncs: []
      Callsites:
        - Src:             'base64.c:29,4'
          Dst:             i_panic
        - Src:             'base64.c:33,4'
          Dst:             i_panic
        - Src:             'base64.c:41,3'
          Dst:             i_panic
    - functionName:    pool_get_name
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_truncate_rshift_bits
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buf
        - bits
      BBCount:         18
      ICount:          150
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - buffer_get_modifiable_data
        - buffer_set_used_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'buffer.c:490,6'
          Branch Sides:
            - BranchSide:      'buffer.c:490,28'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:492,6'
              BranchSideFuncs:
                - buffer_set_used_size
                - buffer_set_used_size
                - buffer_get_modifiable_data
        - Branch String:   'buffer.c:492,6'
          Branch Sides:
            - BranchSide:      'buffer.c:494,20'
              BranchSideFuncs:
                - buffer_set_used_size
                - buffer_get_modifiable_data
            - BranchSide:      'buffer.c:507,24'
              BranchSideFuncs:
                - buffer_set_used_size
        - Branch String:   'buffer.c:497,29'
          Branch Sides:
            - BranchSide:      'buffer.c:497,3'
              BranchSideFuncs:
                - buffer_set_used_size
                - buffer_get_modifiable_data
            - BranchSide:      'buffer.c:497,3'
              BranchSideFuncs:
                - buffer_set_used_size
                - buffer_get_modifiable_data
        - Branch String:   'buffer.c:500,7'
          Branch Sides:
            - BranchSide:      'buffer.c:501,17'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:506,2'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:501,4'
          Branch Sides:
            - BranchSide:      'buffer.c:502,15'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:504,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:497,3'
          Dst:             buffer_set_used_size
        - Src:             'buffer.c:498,24'
          Dst:             buffer_get_modifiable_data
        - Src:             'buffer.c:507,3'
          Dst:             buffer_set_used_size
    - functionName:    buffer_set_used_size
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - used_size
      BBCount:         10
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    31
      BranchProfiles:
        - Branch String:   'buffer.c:413,2'
          Branch Sides:
            - BranchSide:      'buffer.c:413,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:415,6'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:415,6'
          Branch Sides:
            - BranchSide:      'buffer.c:415,6'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:416,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:413,2'
          Dst:             i_panic
    - functionName:    buffer_get_modifiable_data
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
        - used_size_r
      BBCount:         13
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    27
      BranchProfiles:
        - Branch String:   'buffer.c:403,6'
          Branch Sides:
            - BranchSide:      'buffer.c:404,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:405,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'buffer.c:405,2'
          Branch Sides:
            - BranchSide:      'buffer.c:405,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:405,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'buffer.c:405,2'
          Branch Sides:
            - BranchSide:      'buffer.c:405,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:405,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:405,2'
          Dst:             i_panic
    - functionName:    p_realloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         11
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:131,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:133,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:133,6'
          Branch Sides:
            - BranchSide:      './mempool.h:134,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:136,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:130,3'
          Dst:             i_panic
    - functionName:    buffer_verify_pool
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         14
      ICount:          99
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - p_realloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'buffer.c:476,24'
          Branch Sides:
            - BranchSide:      'buffer.c:476,27'
              BranchSideFuncs:
                - p_realloc.4490
                - i_panic
            - BranchSide:      'buffer.c:476,24'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:476,53'
          Branch Sides:
            - BranchSide:      'buffer.c:476,56'
              BranchSideFuncs:
                - p_realloc.4490
                - i_panic
            - BranchSide:      'buffer.c:476,53'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:476,6'
          Branch Sides:
            - BranchSide:      'buffer.c:476,6'
              BranchSideFuncs:
                - p_realloc.4490
                - i_panic
            - BranchSide:      'buffer.c:479,19'
              BranchSideFuncs:
                - p_realloc.4490
                - i_panic
        - Branch String:   'buffer.c:481,3'
          Branch Sides:
            - BranchSide:      'buffer.c:481,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:482,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:479,9'
          Dst:             p_realloc
        - Src:             'buffer.c:481,3'
          Dst:             i_panic
    - functionName:    buffer_cmp
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf1
        - buf2
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'buffer.c:462,6'
          Branch Sides:
            - BranchSide:      'buffer.c:463,3'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:464,6'
              BranchSideFuncs:
                - memcmp
        - Branch String:   'buffer.c:464,6'
          Branch Sides:
            - BranchSide:      'buffer.c:465,3'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:467,16'
              BranchSideFuncs:
                - memcmp
      Callsites:
        - Src:             'buffer.c:467,9'
          Dst:             memcmp
    - functionName:    buffer_get_avail_size
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         10
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'buffer.c:456,2'
          Branch Sides:
            - BranchSide:      'buffer.c:456,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:457,11'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:457,11'
          Branch Sides:
            - BranchSide:      'buffer.c:457,11'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:457,37'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:456,2'
          Dst:             i_panic
    - functionName:    buffer_get_writable_size
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_get_size
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_clear
      functionSourceFile: '/src/dovecot/src/lib/./buffer.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_set_used_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './buffer.h:141,2'
          Dst:             buffer_set_used_size
    - functionName:    buffer_clear_safe
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_clear
        - safe_memset
      functionUses:    1
      BranchProfiles:
        - Branch String:   'buffer.c:426,6'
          Branch Sides:
            - BranchSide:      'buffer.c:426,6'
              BranchSideFuncs:
                - safe_memset
                - buffer_clear
            - BranchSide:      'buffer.c:427,15'
              BranchSideFuncs:
                - safe_memset
                - buffer_clear
        - Branch String:   'buffer.c:427,33'
          Branch Sides:
            - BranchSide:      'buffer.c:427,3'
              BranchSideFuncs:
                - safe_memset
                - buffer_clear
            - BranchSide:      'buffer.c:427,3'
              BranchSideFuncs:
                - safe_memset
                - buffer_clear
      Callsites:
        - Src:             'buffer.c:427,3'
          Dst:             safe_memset
        - Src:             'buffer.c:428,2'
          Dst:             buffer_clear
    - functionName:    buffer_append_space_unsafe
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buf
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_get_space_unsafe
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:395,9'
          Dst:             buffer_get_space_unsafe
    - functionName:    buffer_get_space_unsafe
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - pos
        - size
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_check_limits
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:387,2'
          Dst:             buffer_check_limits
    - functionName:    buffer_check_limits
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - buf
        - pos
        - data_size
      BBCount:         41
      ICount:          324
      EdgeCount:       50
      CyclomaticComplexity: 11
      functionsReached:
        - buffer_alloc
        - i_panic
        - pool_get_exp_grown_size
        - pool_get_name
      functionUses:    6
      BranchProfiles:
        - Branch String:   'buffer.c:58,6'
          Branch Sides:
            - BranchSide:      'buffer.c:59,52'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:61,13'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
        - Branch String:   'buffer.c:63,27'
          Branch Sides:
            - BranchSide:      'buffer.c:63,30'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
            - BranchSide:      'buffer.c:74,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
        - Branch String:   'buffer.c:63,6'
          Branch Sides:
            - BranchSide:      'buffer.c:65,16'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
            - BranchSide:      'buffer.c:74,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
        - Branch String:   'buffer.c:65,16'
          Branch Sides:
            - BranchSide:      'buffer.c:65,16'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
            - BranchSide:      'buffer.c:65,16'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
        - Branch String:   'buffer.c:65,16'
          Branch Sides:
            - BranchSide:      'buffer.c:65,16'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
            - BranchSide:      'buffer.c:65,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
        - Branch String:   'buffer.c:65,16'
          Branch Sides:
            - BranchSide:      'buffer.c:65,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
            - BranchSide:      'buffer.c:65,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - pool_get_exp_grown_size
                - buffer_alloc
                - pool_get_name.4479
                - i_panic
        - Branch String:   'buffer.c:74,6'
          Branch Sides:
            - BranchSide:      'buffer.c:75,7'
              BranchSideFuncs:
                - pool_get_exp_grown_size
                - buffer_alloc
                - i_panic
                - i_panic
                - pool_get_name.4479
                - i_panic
            - BranchSide:      'buffer.c:109,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'buffer.c:75,7'
          Branch Sides:
            - BranchSide:      'buffer.c:77,5'
              BranchSideFuncs:
                - pool_get_name.4479
                - i_panic
            - BranchSide:      'buffer.c:83,28'
              BranchSideFuncs:
                - pool_get_exp_grown_size
                - buffer_alloc
                - i_panic
                - i_panic
        - Branch String:   'buffer.c:78,5'
          Branch Sides:
            - BranchSide:      'buffer.c:76,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:79,19'
              BranchSideFuncs:
                - pool_get_name.4479
                - i_panic
        - Branch String:   'buffer.c:85,7'
          Branch Sides:
            - BranchSide:      'buffer.c:88,21'
              BranchSideFuncs:
                - buffer_alloc
                - i_panic
                - i_panic
            - BranchSide:      'buffer.c:90,16'
              BranchSideFuncs:
                - buffer_alloc
                - i_panic
                - i_panic
        - Branch String:   'buffer.c:109,6'
          Branch Sides:
            - BranchSide:      'buffer.c:110,15'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'buffer.c:111,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'buffer.c:111,2'
          Branch Sides:
            - BranchSide:      'buffer.c:111,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:112,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'buffer.c:112,2'
          Branch Sides:
            - BranchSide:      'buffer.c:112,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:112,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:59,3'
          Dst:             i_panic
        - Src:             'buffer.c:79,5'
          Dst:             pool_get_name
        - Src:             'buffer.c:76,4'
          Dst:             i_panic
        - Src:             'buffer.c:83,4'
          Dst:             pool_get_exp_grown_size
        - Src:             'buffer.c:90,3'
          Dst:             buffer_alloc
        - Src:             'buffer.c:111,2'
          Dst:             i_panic
        - Src:             'buffer.c:112,2'
          Dst:             i_panic
    - functionName:    buffer_alloc
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buf
        - size
      BBCount:         20
      ICount:          154
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - p_malloc
        - p_realloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'buffer.c:35,2'
          Branch Sides:
            - BranchSide:      'buffer.c:35,2'
              BranchSideFuncs:
                - p_realloc.4490
                - p_malloc.4511
                - i_panic
                - i_panic
            - BranchSide:      'buffer.c:35,2'
              BranchSideFuncs:
                - p_realloc.4490
                - p_malloc.4511
                - i_panic
                - i_panic
        - Branch String:   'buffer.c:35,2'
          Branch Sides:
            - BranchSide:      'buffer.c:35,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:37,6'
              BranchSideFuncs:
                - p_realloc.4490
                - p_malloc.4511
                - i_panic
        - Branch String:   'buffer.c:37,6'
          Branch Sides:
            - BranchSide:      'buffer.c:38,3'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:40,2'
              BranchSideFuncs:
                - p_realloc.4490
                - p_malloc.4511
                - i_panic
        - Branch String:   'buffer.c:40,2'
          Branch Sides:
            - BranchSide:      'buffer.c:40,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:42,6'
              BranchSideFuncs:
                - p_realloc.4490
                - p_malloc.4511
        - Branch String:   'buffer.c:42,6'
          Branch Sides:
            - BranchSide:      'buffer.c:43,28'
              BranchSideFuncs:
                - p_malloc.4511
            - BranchSide:      'buffer.c:45,29'
              BranchSideFuncs:
                - p_realloc.4490
      Callsites:
        - Src:             'buffer.c:35,2'
          Dst:             i_panic
        - Src:             'buffer.c:40,2'
          Dst:             i_panic
        - Src:             'buffer.c:43,19'
          Dst:             p_malloc
        - Src:             'buffer.c:45,19'
          Dst:             p_realloc
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    buffer_append_buf
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - src_pos
        - copy_size
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_copy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:380,2'
          Dst:             buffer_copy
    - functionName:    buffer_copy
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - _dest
        - dest_pos
        - _src
        - src_pos
        - copy_size
      BBCount:         17
      ICount:          150
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_check_limits
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   'buffer.c:359,2'
          Branch Sides:
            - BranchSide:      'buffer.c:359,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:361,13'
              BranchSideFuncs:
                - buffer_check_limits
                - i_panic
        - Branch String:   'buffer.c:362,6'
          Branch Sides:
            - BranchSide:      'buffer.c:363,15'
              BranchSideFuncs:
                - buffer_check_limits
                - i_panic
            - BranchSide:      'buffer.c:365,22'
              BranchSideFuncs:
                - buffer_check_limits
                - i_panic
        - Branch String:   'buffer.c:366,2'
          Branch Sides:
            - BranchSide:      'buffer.c:366,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:368,6'
              BranchSideFuncs: []
        - Branch String:   'buffer.c:368,6'
          Branch Sides:
            - BranchSide:      'buffer.c:369,11'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:372,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:359,2'
          Dst:             i_panic
        - Src:             'buffer.c:365,2'
          Dst:             buffer_check_limits
        - Src:             'buffer.c:366,2'
          Dst:             i_panic
    - functionName:    buffer_insert_zero
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - pos
        - data_size
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_copy
        - buffer_write_zero
      functionUses:    0
      BranchProfiles:
        - Branch String:   'buffer.c:343,6'
          Branch Sides:
            - BranchSide:      'buffer.c:344,21'
              BranchSideFuncs:
                - buffer_write_zero
            - BranchSide:      'buffer.c:346,15'
              BranchSideFuncs:
                - buffer_copy
      Callsites:
        - Src:             'buffer.c:344,3'
          Dst:             buffer_write_zero
        - Src:             'buffer.c:346,3'
          Dst:             buffer_copy
    - functionName:    buffer_write_zero
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - pos
        - data_size
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_check_limits
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:326,2'
          Dst:             buffer_check_limits
    - functionName:    buffer_append_zero
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - data_size
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_check_limits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:336,2'
          Dst:             buffer_check_limits
    - functionName:    buffer_replace
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - pos
        - size
        - data
        - data_size
      BBCount:         12
      ICount:          132
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_copy
        - buffer_set_used_size
        - buffer_write
      functionUses:    1
      BranchProfiles:
        - Branch String:   'buffer.c:294,6'
          Branch Sides:
            - BranchSide:      'buffer.c:295,16'
              BranchSideFuncs:
                - buffer_write
            - BranchSide:      'buffer.c:298,13'
              BranchSideFuncs:
                - buffer_write
                - buffer_set_used_size
                - buffer_copy
        - Branch String:   'buffer.c:300,6'
          Branch Sides:
            - BranchSide:      'buffer.c:301,15'
              BranchSideFuncs:
                - buffer_copy
                - buffer_set_used_size
            - BranchSide:      'buffer.c:314,12'
              BranchSideFuncs:
                - buffer_write
                - buffer_set_used_size
        - Branch String:   'buffer.c:302,7'
          Branch Sides:
            - BranchSide:      'buffer.c:304,12'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      'buffer.c:308,16'
              BranchSideFuncs:
                - buffer_copy
                - buffer_set_used_size
      Callsites:
        - Src:             'buffer.c:295,3'
          Dst:             buffer_write
        - Src:             'buffer.c:308,4'
          Dst:             buffer_copy
        - Src:             'buffer.c:315,3'
          Dst:             buffer_write
        - Src:             'buffer.c:318,2'
          Dst:             buffer_set_used_size
    - functionName:    buffer_write
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - pos
        - data
        - data_size
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_check_limits
      functionUses:    5
      BranchProfiles:
        - Branch String:   'buffer.c:229,6'
          Branch Sides:
            - BranchSide:      'buffer.c:229,6'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:230,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:228,2'
          Dst:             buffer_check_limits
    - functionName:    buffer_delete
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - pos
        - size
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_set_used_size
      functionUses:    13
      BranchProfiles:
        - Branch String:   'buffer.c:271,6'
          Branch Sides:
            - BranchSide:      'buffer.c:272,3'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:273,13'
              BranchSideFuncs:
                - buffer_set_used_size
        - Branch String:   'buffer.c:275,6'
          Branch Sides:
            - BranchSide:      'buffer.c:277,15'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      'buffer.c:282,12'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             'buffer.c:285,2'
          Dst:             buffer_set_used_size
    - functionName:    buffer_insert
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - pos
        - data
        - data_size
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_copy
        - buffer_write
      functionUses:    10
      BranchProfiles:
        - Branch String:   'buffer.c:258,6'
          Branch Sides:
            - BranchSide:      'buffer.c:259,16'
              BranchSideFuncs:
                - buffer_write
            - BranchSide:      'buffer.c:260,11'
              BranchSideFuncs:
                - buffer_copy
      Callsites:
        - Src:             'buffer.c:259,3'
          Dst:             buffer_write
        - Src:             'buffer.c:261,3'
          Dst:             buffer_copy
    - functionName:    buffer_append_c
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - _buf
        - chr
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_check_append_limits
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:249,2'
          Dst:             buffer_check_append_limits
    - functionName:    buffer_check_append_limits
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buf
        - data_size
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_check_limits
      functionUses:    2
      BranchProfiles:
        - Branch String:   'buffer.c:121,6'
          Branch Sides:
            - BranchSide:      'buffer.c:122,23'
              BranchSideFuncs:
                - buffer_check_limits
            - BranchSide:      'buffer.c:124,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:122,3'
          Dst:             buffer_check_limits
    - functionName:    buffer_append
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _buf
        - data
        - data_size
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_check_append_limits
      functionUses:    72
      BranchProfiles:
        - Branch String:   'buffer.c:237,6'
          Branch Sides:
            - BranchSide:      'buffer.c:237,6'
              BranchSideFuncs:
                - buffer_check_append_limits
            - BranchSide:      'buffer.c:238,16'
              BranchSideFuncs:
                - buffer_check_append_limits
      Callsites:
        - Src:             'buffer.c:239,3'
          Dst:             buffer_check_append_limits
    - functionName:    buffer_get_pool
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    buffer_free_without_data
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:211,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    buffer_free
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buf
      BBCount:         15
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - p_free_internal
      functionUses:    14
      BranchProfiles:
        - Branch String:   'buffer.c:192,6'
          Branch Sides:
            - BranchSide:      'buffer.c:193,3'
              BranchSideFuncs: []
            - BranchSide:      'buffer.c:194,28'
              BranchSideFuncs:
                - p_free_internal.4535
                - p_free_internal.4535
        - Branch String:   'buffer.c:197,6'
          Branch Sides:
            - BranchSide:      'buffer.c:198,3'
              BranchSideFuncs:
                - p_free_internal.4535
                - p_free_internal.4535
            - BranchSide:      'buffer.c:199,6'
              BranchSideFuncs:
                - p_free_internal.4535
        - Branch String:   'buffer.c:199,6'
          Branch Sides:
            - BranchSide:      'buffer.c:199,6'
              BranchSideFuncs:
                - p_free_internal.4535
            - BranchSide:      'buffer.c:200,3'
              BranchSideFuncs:
                - p_free_internal.4535
      Callsites:
        - Src:             'buffer.c:198,3'
          Dst:             p_free_internal
        - Src:             'buffer.c:200,3'
          Dst:             p_free_internal
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    buffer_create_dynamic_max
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - init_size
        - max_size
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_alloc
        - malloc_multiply_check
        - p_malloc
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:179,8'
          Dst:             malloc_multiply_check
        - Src:             'buffer.c:179,8'
          Dst:             p_malloc
        - Src:             'buffer.c:186,2'
          Dst:             buffer_alloc
    - functionName:    buffer_create_dynamic
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - init_size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_create_dynamic_max
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'buffer.c:162,9'
          Dst:             buffer_create_dynamic_max
    - functionName:    buffer_create_from_const_data
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buffer
        - data
        - size
      BBCount:         9
      ICount:          74
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'buffer.c:157,2'
          Branch Sides:
            - BranchSide:      'buffer.c:157,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'buffer.c:157,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'buffer.c:157,2'
          Dst:             i_panic
    - functionName:    buffer_create_from_data
      functionSourceFile: '/src/dovecot/src/lib/buffer.c'
      linkageType:     externalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buffer
        - data
        - size
      BBCount:         3
      ICount:          51
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    connection_create_stream_name
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - conn
        - fd
      BBCount:         26
      ICount:          151
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - str_append
        - str_append_c
        - str_c
        - str_len
        - str_printfa
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:388,24'
          Branch Sides:
            - BranchSide:      'connection.c:389,7'
              BranchSideFuncs:
                - str_append.4670
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_append.4670
            - BranchSide:      'connection.c:390,14'
              BranchSideFuncs:
                - str_append.4670
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_append.4670
        - Branch String:   'connection.c:389,35'
          Branch Sides:
            - BranchSide:      'connection.c:389,38'
              BranchSideFuncs:
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_append.4670
                - str_append.4670
            - BranchSide:      'connection.c:391,6'
              BranchSideFuncs:
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_append.4670
        - Branch String:   'connection.c:388,6'
          Branch Sides:
            - BranchSide:      'connection.c:390,14'
              BranchSideFuncs:
                - str_append.4670
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_append.4670
            - BranchSide:      'connection.c:391,6'
              BranchSideFuncs:
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_append.4670
        - Branch String:   'connection.c:391,6'
          Branch Sides:
            - BranchSide:      'connection.c:392,3'
              BranchSideFuncs:
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
            - BranchSide:      'connection.c:394,13'
              BranchSideFuncs:
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_append.4670
        - Branch String:   'connection.c:394,13'
          Branch Sides:
            - BranchSide:      'connection.c:395,3'
              BranchSideFuncs:
                - str_append_c.4672
                - str_append.4670
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
            - BranchSide:      'connection.c:397,13'
              BranchSideFuncs:
                - str_append_c.4672
                - str_c
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_printfa
        - Branch String:   'connection.c:400,6'
          Branch Sides:
            - BranchSide:      'connection.c:400,6'
              BranchSideFuncs:
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_c
                - str_append_c.4672
            - BranchSide:      'connection.c:401,15'
              BranchSideFuncs:
                - str_len.4674
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_c
                - str_append_c.4672
        - Branch String:   'connection.c:401,7'
          Branch Sides:
            - BranchSide:      'connection.c:402,4'
              BranchSideFuncs:
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_c
            - BranchSide:      'connection.c:404,4'
              BranchSideFuncs:
                - str_append_c.4672
                - str_printfa
                - str_append_c.4672
                - str_c
      Callsites:
        - Src:             'connection.c:386,9'
          Dst:             t_str_new
        - Src:             'connection.c:387,2'
          Dst:             str_append
        - Src:             'connection.c:390,3'
          Dst:             str_append
        - Src:             'connection.c:392,3'
          Dst:             str_append_c
        - Src:             'connection.c:393,3'
          Dst:             str_append
        - Src:             'connection.c:395,3'
          Dst:             str_append_c
        - Src:             'connection.c:396,3'
          Dst:             str_append
        - Src:             'connection.c:398,3'
          Dst:             str_printfa
        - Src:             'connection.c:401,7'
          Dst:             str_len
        - Src:             'connection.c:402,4'
          Dst:             str_append_c
        - Src:             'connection.c:404,4'
          Dst:             str_append_c
        - Src:             'connection.c:405,3'
          Dst:             str_printfa
        - Src:             'connection.c:407,2'
          Dst:             str_append_c
        - Src:             'connection.c:409,9'
          Dst:             str_c
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - cstr
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:72,32'
          Dst:             strlen
        - Src:             './str.h:72,2'
          Dst:             buffer_insert
    - functionName:    connection_flush_callback
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         20
      ICount:          143
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - connection_input_resume
        - e_debug
        - e_error
        - event_send_abort
        - event_want_level
        - o_stream_flush
        - o_stream_get_buffer_used_size
        - o_stream_get_error
        - o_stream_set_flush_callback
        - o_stream_unset_flush_callback
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:53,6'
          Branch Sides:
            - BranchSide:      'connection.c:54,9'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
                - event_want_level
                - event_send_abort
                - connection_input_resume
                - o_stream_unset_flush_callback
                - o_stream_set_flush_callback
                - e_debug
                - o_stream_get_error
                - e_error
            - BranchSide:      'connection.c:56,24'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_get_buffer_used_size
                - event_want_level
                - event_send_abort
                - connection_input_resume
                - o_stream_unset_flush_callback
                - o_stream_set_flush_callback
                - e_debug
                - o_stream_get_error
                - e_error
        - Branch String:   'connection.c:58,6'
          Branch Sides:
            - BranchSide:      'connection.c:59,3'
              BranchSideFuncs:
                - o_stream_get_error
                - e_error
            - BranchSide:      'connection.c:61,43'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
                - event_want_level
                - event_send_abort
                - connection_input_resume
                - o_stream_unset_flush_callback
                - o_stream_set_flush_callback
                - e_debug
        - Branch String:   'connection.c:64,3'
          Branch Sides:
            - BranchSide:      'connection.c:64,3'
              BranchSideFuncs:
                - e_debug
                - connection_input_resume
                - o_stream_unset_flush_callback
                - o_stream_set_flush_callback
            - BranchSide:      'connection.c:64,3'
              BranchSideFuncs:
                - event_send_abort
                - connection_input_resume
                - o_stream_unset_flush_callback
                - o_stream_set_flush_callback
        - Branch String:   'connection.c:68,7'
          Branch Sides:
            - BranchSide:      'connection.c:69,4'
              BranchSideFuncs:
                - o_stream_set_flush_callback
            - BranchSide:      'connection.c:71,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:56,9'
          Dst:             o_stream_flush
        - Src:             'connection.c:59,3'
          Dst:             o_stream_get_error
        - Src:             'connection.c:59,3'
          Dst:             e_error
        - Src:             'connection.c:61,13'
          Dst:             o_stream_get_buffer_used_size
        - Src:             'connection.c:64,3'
          Dst:             event_want_level
        - Src:             'connection.c:64,3'
          Dst:             e_debug
        - Src:             'connection.c:64,3'
          Dst:             event_send_abort
        - Src:             'connection.c:66,3'
          Dst:             connection_input_resume
        - Src:             'connection.c:67,3'
          Dst:             o_stream_unset_flush_callback
        - Src:             'connection.c:69,4'
          Dst:             o_stream_set_flush_callback
    - functionName:    connection_input_resume
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_input_resume_full
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:302,2'
          Dst:             connection_input_resume_full
    - functionName:    connection_input_resume_full
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - conn
        - set_io_pending
      BBCount:         33
      ICount:          207
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - io_add_istream_to
        - io_add_to
        - io_set_pending
        - timeout_add_to
      functionUses:    4
      BranchProfiles:
        - Branch String:   'connection.c:278,2'
          Branch Sides:
            - BranchSide:      'connection.c:278,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:280,6'
              BranchSideFuncs:
                - timeout_add_to
                - io_add_to
                - io_set_pending
                - io_add_istream_to
                - io_set_pending
        - Branch String:   'connection.c:280,6'
          Branch Sides:
            - BranchSide:      'connection.c:282,2'
              BranchSideFuncs:
                - timeout_add_to
            - BranchSide:      'connection.c:282,13'
              BranchSideFuncs:
                - timeout_add_to
                - io_add_to
                - io_set_pending
                - io_add_istream_to
                - io_set_pending
        - Branch String:   'connection.c:282,13'
          Branch Sides:
            - BranchSide:      'connection.c:283,14'
              BranchSideFuncs:
                - io_add_istream_to
                - timeout_add_to
                - io_set_pending
            - BranchSide:      'connection.c:287,13'
              BranchSideFuncs:
                - timeout_add_to
                - io_add_to
                - io_set_pending
        - Branch String:   'connection.c:285,7'
          Branch Sides:
            - BranchSide:      'connection.c:286,19'
              BranchSideFuncs:
                - io_set_pending
                - timeout_add_to
            - BranchSide:      'connection.c:287,2'
              BranchSideFuncs:
                - timeout_add_to
        - Branch String:   'connection.c:290,7'
          Branch Sides:
            - BranchSide:      'connection.c:291,19'
              BranchSideFuncs:
                - io_set_pending
                - timeout_add_to
            - BranchSide:      'connection.c:292,2'
              BranchSideFuncs:
                - timeout_add_to
        - Branch String:   'connection.c:293,41'
          Branch Sides:
            - BranchSide:      'connection.c:293,44'
              BranchSideFuncs:
                - timeout_add_to
            - BranchSide:      'connection.c:293,41'
              BranchSideFuncs: []
        - Branch String:   'connection.c:293,6'
          Branch Sides:
            - BranchSide:      'connection.c:293,6'
              BranchSideFuncs:
                - timeout_add_to
            - BranchSide:      'connection.c:294,14'
              BranchSideFuncs:
                - timeout_add_to
        - Branch String:   'connection.c:294,14'
          Branch Sides:
            - BranchSide:      'connection.c:294,14'
              BranchSideFuncs:
                - timeout_add_to
            - BranchSide:      'connection.c:294,14'
              BranchSideFuncs:
                - timeout_add_to
      Callsites:
        - Src:             'connection.c:278,2'
          Dst:             i_panic
        - Src:             'connection.c:283,14'
          Dst:             io_add_istream_to
        - Src:             'connection.c:286,4'
          Dst:             io_set_pending
        - Src:             'connection.c:288,14'
          Dst:             io_add_to
        - Src:             'connection.c:291,4'
          Dst:             io_set_pending
        - Src:             'connection.c:294,14'
          Dst:             timeout_add_to
    - functionName:    connection_output_throttle
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         16
      ICount:          102
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - connection_flush_callback
        - connection_input_halt
        - e_debug
        - event_send_abort
        - event_want_level
        - o_stream_get_buffer_used_size
        - o_stream_get_flush_callback
        - o_stream_set_flush_callback
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:80,48'
          Branch Sides:
            - BranchSide:      'connection.c:81,6'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
                - o_stream_get_flush_callback
                - o_stream_set_flush_callback
                - event_want_level
                - event_send_abort
                - connection_input_halt
                - e_debug
            - BranchSide:      'connection.c:93,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:81,27'
          Branch Sides:
            - BranchSide:      'connection.c:82,36'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
                - o_stream_get_flush_callback
                - o_stream_set_flush_callback
                - event_want_level
                - event_send_abort
                - connection_input_halt
                - e_debug
            - BranchSide:      'connection.c:93,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:80,6'
          Branch Sides:
            - BranchSide:      'connection.c:85,32'
              BranchSideFuncs:
                - o_stream_get_flush_callback
                - o_stream_set_flush_callback
                - event_want_level
                - event_send_abort
                - connection_input_halt
                - e_debug
            - BranchSide:      'connection.c:93,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:88,3'
          Branch Sides:
            - BranchSide:      'connection.c:88,3'
              BranchSideFuncs:
                - e_debug
                - connection_input_halt
            - BranchSide:      'connection.c:88,3'
              BranchSideFuncs:
                - event_send_abort
                - connection_input_halt
      Callsites:
        - Src:             'connection.c:82,6'
          Dst:             o_stream_get_buffer_used_size
        - Src:             'connection.c:85,4'
          Dst:             o_stream_get_flush_callback
        - Src:             'connection.c:86,3'
          Dst:             o_stream_set_flush_callback
        - Src:             'connection.c:86,3'
          Dst:             connection_flush_callback
        - Src:             'connection.c:88,3'
          Dst:             event_want_level
        - Src:             'connection.c:88,3'
          Dst:             e_debug
        - Src:             'connection.c:88,3'
          Dst:             event_send_abort
        - Src:             'connection.c:90,3'
          Dst:             connection_input_halt
    - functionName:    connection_input_halt
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_remove
        - timeout_remove
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:271,2'
          Dst:             io_remove
        - Src:             'connection.c:272,2'
          Dst:             timeout_remove
    - functionName:    connection_is_valid_dns_name
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1104
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         36
      ICount:          184
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - strstr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:1091,6'
          Branch Sides:
            - BranchSide:      'connection.c:1092,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1093,13'
              BranchSideFuncs:
                - strstr
        - Branch String:   'connection.c:1093,6'
          Branch Sides:
            - BranchSide:      'connection.c:1094,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1095,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1095,2'
          Branch Sides:
            - BranchSide:      'connection.c:1096,9'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1103,9'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1096,17'
          Branch Sides:
            - BranchSide:      'connection.c:1096,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1097,9'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1096,30'
          Branch Sides:
            - BranchSide:      'connection.c:1097,9'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1102,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1097,17'
          Branch Sides:
            - BranchSide:      'connection.c:1097,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1098,9'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1097,30'
          Branch Sides:
            - BranchSide:      'connection.c:1098,9'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1102,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1098,17'
          Branch Sides:
            - BranchSide:      'connection.c:1098,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1099,8'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1098,30'
          Branch Sides:
            - BranchSide:      'connection.c:1099,8'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1102,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1099,17'
          Branch Sides:
            - BranchSide:      'connection.c:1099,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1102,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1099,30'
          Branch Sides:
            - BranchSide:      'connection.c:1100,8'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1102,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1100,17'
          Branch Sides:
            - BranchSide:      'connection.c:1100,21'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1102,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:1096,7'
          Branch Sides:
            - BranchSide:      'connection.c:1101,4'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1102,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:1093,6'
          Dst:             strstr
    - functionName:    connection_list_deinit
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1072
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _list
      BBCount:         14
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - connection_closed
        - i_panic
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:1076,6'
          Branch Sides:
            - BranchSide:      'connection.c:1077,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1078,3'
              BranchSideFuncs:
                - p_free_internal.4693
                - connection_closed
                - i_panic
        - Branch String:   'connection.c:1080,2'
          Branch Sides:
            - BranchSide:      'connection.c:1081,10'
              BranchSideFuncs:
                - connection_closed
                - p_free_internal.4693
                - i_panic
            - BranchSide:      'connection.c:1085,2'
              BranchSideFuncs:
                - p_free_internal.4693
        - Branch String:   'connection.c:1083,3'
          Branch Sides:
            - BranchSide:      'connection.c:1080,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:1083,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'connection.c:1082,3'
          Dst:             connection_closed
        - Src:             'connection.c:1083,3'
          Dst:             i_panic
        - Src:             'connection.c:1085,2'
          Dst:             p_free_internal
    - functionName:    connection_closed
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - conn
        - reason
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    connection_list_init
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1054
      functionLinenumberEnd: 1068
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - vfuncs
      BBCount:         22
      ICount:          123
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:1057,2'
          Branch Sides:
            - BranchSide:      'connection.c:1057,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
                - i_panic
            - BranchSide:      'connection.c:1057,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
                - i_panic
        - Branch String:   'connection.c:1057,2'
          Branch Sides:
            - BranchSide:      'connection.c:1057,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
        - Branch String:   'connection.c:1059,2'
          Branch Sides:
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
        - Branch String:   'connection.c:1059,2'
          Branch Sides:
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
        - Branch String:   'connection.c:1059,2'
          Branch Sides:
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
                - i_panic
        - Branch String:   'connection.c:1059,2'
          Branch Sides:
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:1059,2'
              BranchSideFuncs:
                - malloc_multiply_check.4694
                - p_malloc.4696
      Callsites:
        - Src:             'connection.c:1057,2'
          Dst:             i_panic
        - Src:             'connection.c:1059,2'
          Dst:             i_panic
        - Src:             'connection.c:1064,9'
          Dst:             malloc_multiply_check
        - Src:             'connection.c:1064,9'
          Dst:             p_malloc
    - functionName:    connection_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1049
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_switch_ioloop_to
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:1048,2'
          Dst:             connection_switch_ioloop_to
    - functionName:    connection_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - ioloop
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - i_stream_switch_ioloop_to
        - io_loop_move_io_to
        - io_loop_move_timeout_to
        - o_stream_switch_ioloop_to
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:1036,6'
          Branch Sides:
            - BranchSide:      'connection.c:1037,33'
              BranchSideFuncs:
                - io_loop_move_io_to
                - o_stream_switch_ioloop_to
                - i_stream_switch_ioloop_to
                - io_loop_move_timeout_to
            - BranchSide:      'connection.c:1038,6'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
                - i_stream_switch_ioloop_to
                - io_loop_move_timeout_to
        - Branch String:   'connection.c:1038,6'
          Branch Sides:
            - BranchSide:      'connection.c:1039,38'
              BranchSideFuncs:
                - io_loop_move_timeout_to
                - o_stream_switch_ioloop_to
                - i_stream_switch_ioloop_to
            - BranchSide:      'connection.c:1040,6'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
                - i_stream_switch_ioloop_to
        - Branch String:   'connection.c:1040,6'
          Branch Sides:
            - BranchSide:      'connection.c:1041,29'
              BranchSideFuncs:
                - i_stream_switch_ioloop_to
                - o_stream_switch_ioloop_to
            - BranchSide:      'connection.c:1042,6'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
        - Branch String:   'connection.c:1042,6'
          Branch Sides:
            - BranchSide:      'connection.c:1042,6'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
            - BranchSide:      'connection.c:1043,29'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
      Callsites:
        - Src:             'connection.c:1037,14'
          Dst:             io_loop_move_io_to
        - Src:             'connection.c:1039,14'
          Dst:             io_loop_move_timeout_to
        - Src:             'connection.c:1041,3'
          Dst:             i_stream_switch_ioloop_to
        - Src:             'connection.c:1043,3'
          Dst:             o_stream_switch_ioloop_to
    - functionName:    connection_set_default_handlers
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1028
      functionLinenumberEnd: 1030
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_set_handlers
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:1029,2'
          Dst:             connection_set_handlers
    - functionName:    connection_set_handlers
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 1009
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - vfuncs
      BBCount:         25
      ICount:          148
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - connection_input_halt
        - connection_input_resume_full
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:1011,2'
          Branch Sides:
            - BranchSide:      'connection.c:1011,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:1012,2'
              BranchSideFuncs:
                - connection_input_resume_full
        - Branch String:   'connection.c:1013,13'
          Branch Sides:
            - BranchSide:      'connection.c:1014,17'
              BranchSideFuncs:
                - connection_input_resume_full
            - BranchSide:      'connection.c:1015,13'
              BranchSideFuncs:
                - connection_input_resume_full
        - Branch String:   'connection.c:1015,13'
          Branch Sides:
            - BranchSide:      'connection.c:1016,17'
              BranchSideFuncs:
                - connection_input_resume_full
            - BranchSide:      'connection.c:1017,13'
              BranchSideFuncs:
                - connection_input_resume_full
        - Branch String:   'connection.c:1017,13'
          Branch Sides:
            - BranchSide:      'connection.c:1018,17'
              BranchSideFuncs:
                - connection_input_resume_full
            - BranchSide:      'connection.c:1019,13'
              BranchSideFuncs:
                - connection_input_resume_full
        - Branch String:   'connection.c:1019,13'
          Branch Sides:
            - BranchSide:      'connection.c:1020,17'
              BranchSideFuncs:
                - connection_input_resume_full
            - BranchSide:      'connection.c:1021,13'
              BranchSideFuncs:
                - connection_input_resume_full
        - Branch String:   'connection.c:1021,13'
          Branch Sides:
            - BranchSide:      'connection.c:1022,17'
              BranchSideFuncs:
                - connection_input_resume_full
            - BranchSide:      'connection.c:1023,7'
              BranchSideFuncs:
                - connection_input_resume_full
        - Branch String:   'connection.c:1023,6'
          Branch Sides:
            - BranchSide:      'connection.c:1023,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:1024,32'
              BranchSideFuncs:
                - connection_input_resume_full
      Callsites:
        - Src:             'connection.c:1010,2'
          Dst:             connection_input_halt
        - Src:             'connection.c:1011,2'
          Dst:             i_panic
        - Src:             'connection.c:1024,3'
          Dst:             connection_input_resume_full
    - functionName:    connection_input_default
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         24
      ICount:          103
      EdgeCount:       27
      CyclomaticComplexity: 5
      functionsReached:
        - connection_closed
        - connection_handshake_received
        - connection_input_parse_lines
        - connection_input_read
        - connection_set_handshake_ready
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:159,43'
          Branch Sides:
            - BranchSide:      'connection.c:160,6'
              BranchSideFuncs:
                - connection_input_read
                - connection_input_parse_lines
                - i_unreached
            - BranchSide:      'connection.c:172,32'
              BranchSideFuncs:
                - connection_input_read
                - connection_input_parse_lines
                - i_unreached
        - Branch String:   'connection.c:159,6'
          Branch Sides:
            - BranchSide:      'connection.c:161,14'
              BranchSideFuncs:
                - connection_set_handshake_ready
                - connection_input_read
                - connection_input_parse_lines
                - i_unreached
                - connection_closed
            - BranchSide:      'connection.c:172,32'
              BranchSideFuncs:
                - connection_input_read
                - connection_input_parse_lines
                - i_unreached
        - Branch String:   'connection.c:161,7'
          Branch Sides:
            - BranchSide:      'connection.c:163,5'
              BranchSideFuncs:
                - connection_closed
            - BranchSide:      'connection.c:165,14'
              BranchSideFuncs:
                - connection_set_handshake_ready
                - connection_input_read
                - connection_input_parse_lines
                - i_unreached
        - Branch String:   'connection.c:165,14'
          Branch Sides:
            - BranchSide:      'connection.c:166,4'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:168,35'
              BranchSideFuncs:
                - connection_set_handshake_ready
                - connection_input_read
                - connection_input_parse_lines
                - i_unreached
        - Branch String:   'connection.c:172,2'
          Branch Sides:
            - BranchSide:      'connection.c:174,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:177,3'
              BranchSideFuncs:
                - connection_input_parse_lines
            - BranchSide:      'connection.c:177,3'
              BranchSideFuncs:
                - connection_input_parse_lines
            - BranchSide:      'connection.c:179,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'connection.c:182,2'
          Branch Sides:
            - BranchSide:      'connection.c:182,38'
              BranchSideFuncs:
                - connection_input_parse_lines
            - BranchSide:      'connection.c:182,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:159,7'
          Dst:             connection_handshake_received
        - Src:             'connection.c:162,4'
          Dst:             connection_closed
        - Src:             'connection.c:168,4'
          Dst:             connection_set_handshake_ready
        - Src:             'connection.c:172,10'
          Dst:             connection_input_read
        - Src:             'connection.c:179,3'
          Dst:             i_unreached
        - Src:             'connection.c:182,9'
          Dst:             connection_input_parse_lines
    - functionName:    connection_input_line_default
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - line
      BBCount:         31
      ICount:          176
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - connection_handshake_received
        - connection_set_handshake_ready
        - e_error
        - i_panic
        - t_strsplit_tabescaped
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:240,22'
          Branch Sides:
            - BranchSide:      'connection.c:240,26'
              BranchSideFuncs:
                - e_error
                - connection_handshake_received
                - connection_handshake_received
                - connection_set_handshake_ready
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:245,37'
              BranchSideFuncs:
                - connection_handshake_received
                - connection_handshake_received
                - connection_set_handshake_ready
                - i_panic
                - connection_set_handshake_ready
        - Branch String:   'connection.c:240,6'
          Branch Sides:
            - BranchSide:      'connection.c:241,3'
              BranchSideFuncs:
                - connection_handshake_received
                - connection_handshake_received
                - connection_set_handshake_ready
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:245,37'
              BranchSideFuncs:
                - connection_handshake_received
                - connection_handshake_received
                - connection_set_handshake_ready
                - i_panic
                - connection_set_handshake_ready
        - Branch String:   'connection.c:245,43'
          Branch Sides:
            - BranchSide:      'connection.c:246,7'
              BranchSideFuncs:
                - connection_handshake_received
                - connection_set_handshake_ready
                - i_panic
            - BranchSide:      'connection.c:258,44'
              BranchSideFuncs:
                - connection_handshake_received
                - connection_set_handshake_ready
                - i_panic
        - Branch String:   'connection.c:246,67'
          Branch Sides:
            - BranchSide:      'connection.c:247,7'
              BranchSideFuncs:
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:249,14'
              BranchSideFuncs:
                - connection_set_handshake_ready
        - Branch String:   'connection.c:245,6'
          Branch Sides:
            - BranchSide:      'connection.c:249,14'
              BranchSideFuncs:
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:258,44'
              BranchSideFuncs:
                - connection_handshake_received
                - connection_set_handshake_ready
                - i_panic
        - Branch String:   'connection.c:249,7'
          Branch Sides:
            - BranchSide:      'connection.c:250,8'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:251,12'
              BranchSideFuncs:
                - connection_set_handshake_ready
        - Branch String:   'connection.c:251,12'
          Branch Sides:
            - BranchSide:      'connection.c:252,35'
              BranchSideFuncs:
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:254,4'
              BranchSideFuncs: []
        - Branch String:   'connection.c:264,2'
          Branch Sides:
            - BranchSide:      'connection.c:264,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:266,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:239,9'
          Dst:             t_strsplit_tabescaped
        - Src:             'connection.c:241,3'
          Dst:             e_error
        - Src:             'connection.c:245,7'
          Dst:             connection_handshake_received
        - Src:             'connection.c:252,4'
          Dst:             connection_set_handshake_ready
        - Src:             'connection.c:258,14'
          Dst:             connection_handshake_received
        - Src:             'connection.c:260,3'
          Dst:             connection_set_handshake_ready
        - Src:             'connection.c:264,2'
          Dst:             i_panic
    - functionName:    connection_handshake_args_default
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - args
      BBCount:         17
      ICount:          104
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - connection_verify_version
        - e_error
        - str_array_length
        - str_to_uint
        - strcmp
        - t_strarray_join
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:216,6'
          Branch Sides:
            - BranchSide:      'connection.c:217,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:220,23'
              BranchSideFuncs:
                - str_array_length
                - strcmp
                - str_to_uint
                - str_to_uint
                - connection_verify_version
                - t_strarray_join
                - e_error
        - Branch String:   'connection.c:220,34'
          Branch Sides:
            - BranchSide:      'connection.c:221,13'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
            - BranchSide:      'connection.c:224,3'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
        - Branch String:   'connection.c:221,38'
          Branch Sides:
            - BranchSide:      'connection.c:222,18'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
            - BranchSide:      'connection.c:224,3'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
        - Branch String:   'connection.c:222,47'
          Branch Sides:
            - BranchSide:      'connection.c:223,18'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
            - BranchSide:      'connection.c:224,3'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
        - Branch String:   'connection.c:220,6'
          Branch Sides:
            - BranchSide:      'connection.c:224,3'
              BranchSideFuncs:
                - t_strarray_join
                - e_error
            - BranchSide:      'connection.c:229,32'
              BranchSideFuncs:
                - connection_verify_version
        - Branch String:   'connection.c:229,6'
          Branch Sides:
            - BranchSide:      'connection.c:231,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:232,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:220,6'
          Dst:             str_array_length
        - Src:             'connection.c:221,6'
          Dst:             strcmp
        - Src:             'connection.c:222,6'
          Dst:             str_to_uint
        - Src:             'connection.c:223,6'
          Dst:             str_to_uint
        - Src:             'connection.c:224,3'
          Dst:             t_strarray_join
        - Src:             'connection.c:224,3'
          Dst:             e_error
        - Src:             'connection.c:229,6'
          Dst:             connection_verify_version
    - functionName:    connection_idle_timeout
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_closed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:41,2'
          Dst:             connection_closed
    - functionName:    connection_connect_timeout
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_closed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:46,2'
          Dst:             connection_closed
    - functionName:    connection_verify_version
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - conn
        - service_name
        - major_version
        - minor_version
      BBCount:         12
      ICount:          113
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - e_error
        - i_panic
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:190,2'
          Branch Sides:
            - BranchSide:      'connection.c:190,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:192,13'
              BranchSideFuncs:
                - strcmp
                - e_error
                - e_error
        - Branch String:   'connection.c:192,6'
          Branch Sides:
            - BranchSide:      'connection.c:193,3'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'connection.c:199,6'
              BranchSideFuncs:
                - e_error
        - Branch String:   'connection.c:199,6'
          Branch Sides:
            - BranchSide:      'connection.c:200,3'
              BranchSideFuncs:
                - e_error
            - BranchSide:      'connection.c:206,24'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:190,2'
          Dst:             i_panic
        - Src:             'connection.c:192,6'
          Dst:             strcmp
        - Src:             'connection.c:193,3'
          Dst:             e_error
        - Src:             'connection.c:200,3'
          Dst:             e_error
    - functionName:    connection_handshake_received
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    connection_set_handshake_ready
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 20
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         10
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   'connection.c:21,2'
          Branch Sides:
            - BranchSide:      'connection.c:21,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:22,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:23,6'
          Branch Sides:
            - BranchSide:      'connection.c:23,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:24,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:21,2'
          Dst:             i_panic
    - functionName:    connection_input_read
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 955
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_input_read_stream
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:955,9'
          Dst:             connection_input_read_stream
    - functionName:    connection_input_parse_lines
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         54
      ICount:          277
      EdgeCount:       70
      CyclomaticComplexity: 18
      functionsReached:
        - connection_closed
        - connection_handshake_received
        - connection_output_throttle
        - connection_set_handshake_ready
        - i_panic
        - i_stream_next_line
        - i_stream_ref
        - i_stream_unref
        - o_stream_cork
        - o_stream_ref
        - o_stream_uncork
        - o_stream_unref
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:106,6'
          Branch Sides:
            - BranchSide:      'connection.c:107,16'
              BranchSideFuncs:
                - o_stream_ref
                - o_stream_cork
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:110,2'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
        - Branch String:   'connection.c:110,24'
          Branch Sides:
            - BranchSide:      'connection.c:110,2'
              BranchSideFuncs:
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - i_stream_next_line
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:110,54'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
        - Branch String:   'connection.c:110,2'
          Branch Sides:
            - BranchSide:      'connection.c:111,3'
              BranchSideFuncs:
                - t_push
                - connection_handshake_received
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:138,6'
              BranchSideFuncs:
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
        - Branch String:   'connection.c:112,45'
          Branch Sides:
            - BranchSide:      'connection.c:113,8'
              BranchSideFuncs:
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_set_handshake_ready
                - connection_output_throttle
                - i_panic
            - BranchSide:      'connection.c:124,11'
              BranchSideFuncs:
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_set_handshake_ready
                - connection_output_throttle
                - i_panic
        - Branch String:   'connection.c:112,8'
          Branch Sides:
            - BranchSide:      'connection.c:114,11'
              BranchSideFuncs:
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:124,11'
              BranchSideFuncs:
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_set_handshake_ready
                - connection_output_throttle
                - i_panic
        - Branch String:   'connection.c:115,9'
          Branch Sides:
            - BranchSide:      'connection.c:116,37'
              BranchSideFuncs:
                - connection_set_handshake_ready
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_output_throttle
                - i_panic
            - BranchSide:      'connection.c:117,14'
              BranchSideFuncs:
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_set_handshake_ready
                - connection_output_throttle
                - i_panic
        - Branch String:   'connection.c:117,14'
          Branch Sides:
            - BranchSide:      'connection.c:119,10'
              BranchSideFuncs:
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_set_handshake_ready
                - connection_output_throttle
                - i_panic
            - BranchSide:      'connection.c:121,6'
              BranchSideFuncs:
                - t_pop
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - connection_set_handshake_ready
                - connection_output_throttle
                - i_panic
        - Branch String:   'connection.c:126,5'
          Branch Sides:
            - BranchSide:      'connection.c:126,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:126,5'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - i_panic
                - connection_set_handshake_ready
                - connection_output_throttle
        - Branch String:   'connection.c:128,15'
          Branch Sides:
            - BranchSide:      'connection.c:128,45'
              BranchSideFuncs:
                - connection_output_throttle
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:130,7'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
        - Branch String:   'connection.c:128,7'
          Branch Sides:
            - BranchSide:      'connection.c:129,8'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
            - BranchSide:      'connection.c:130,7'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
        - Branch String:   'connection.c:130,7'
          Branch Sides:
            - BranchSide:      'connection.c:131,4'
              BranchSideFuncs:
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
            - BranchSide:      'connection.c:132,7'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
                - t_push
                - connection_handshake_received
                - t_pop
                - connection_output_throttle
                - i_panic
                - connection_set_handshake_ready
        - Branch String:   'connection.c:132,7'
          Branch Sides:
            - BranchSide:      'connection.c:110,2'
              BranchSideFuncs:
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
            - BranchSide:      'connection.c:135,4'
              BranchSideFuncs:
                - i_stream_unref
                - connection_closed
                - o_stream_uncork
                - o_stream_unref
        - Branch String:   'connection.c:138,6'
          Branch Sides:
            - BranchSide:      'connection.c:139,19'
              BranchSideFuncs:
                - o_stream_uncork
                - o_stream_unref
                - i_stream_unref
                - connection_closed
            - BranchSide:      'connection.c:142,6'
              BranchSideFuncs:
                - i_stream_unref
                - connection_closed
        - Branch String:   'connection.c:142,14'
          Branch Sides:
            - BranchSide:      'connection.c:142,18'
              BranchSideFuncs:
                - connection_closed
                - i_stream_unref
            - BranchSide:      'connection.c:149,6'
              BranchSideFuncs:
                - i_stream_unref
        - Branch String:   'connection.c:142,6'
          Branch Sides:
            - BranchSide:      'connection.c:144,4'
              BranchSideFuncs:
                - i_stream_unref
            - BranchSide:      'connection.c:149,6'
              BranchSideFuncs:
                - i_stream_unref
        - Branch String:   'connection.c:145,7'
          Branch Sides:
            - BranchSide:      'connection.c:146,11'
              BranchSideFuncs:
                - connection_closed
                - i_stream_unref
            - BranchSide:      'connection.c:147,21'
              BranchSideFuncs:
                - connection_closed
                - i_stream_unref
        - Branch String:   'connection.c:149,6'
          Branch Sides:
            - BranchSide:      'connection.c:149,6'
              BranchSideFuncs:
                - i_stream_unref
            - BranchSide:      'connection.c:150,7'
              BranchSideFuncs:
                - i_stream_unref
      Callsites:
        - Src:             'connection.c:105,2'
          Dst:             i_stream_ref
        - Src:             'connection.c:107,3'
          Dst:             o_stream_ref
        - Src:             'connection.c:108,3'
          Dst:             o_stream_cork
        - Src:             'connection.c:110,35'
          Dst:             i_stream_next_line
        - Src:             'connection.c:111,3'
          Dst:             t_push
        - Src:             'connection.c:112,9'
          Dst:             connection_handshake_received
        - Src:             'connection.c:116,6'
          Dst:             connection_set_handshake_ready
        - Src:             'connection.c:126,5'
          Dst:             t_pop
        - Src:             'connection.c:126,5'
          Dst:             i_panic
        - Src:             'connection.c:128,18'
          Dst:             connection_output_throttle
        - Src:             'connection.c:139,3'
          Dst:             o_stream_uncork
        - Src:             'connection.c:140,3'
          Dst:             o_stream_unref
        - Src:             'connection.c:147,3'
          Dst:             connection_closed
        - Src:             'connection.c:151,2'
          Dst:             i_stream_unref
    - functionName:    connection_input_read_stream
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 951
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
        - input
      BBCount:         17
      ICount:          110
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - connection_closed
        - i_stream_get_error
        - i_stream_read
        - i_stream_set_error
        - i_unreached
        - timeout_reset
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:921,6'
          Branch Sides:
            - BranchSide:      'connection.c:922,17'
              BranchSideFuncs:
                - timeout_reset
                - i_stream_read
                - connection_closed
                - i_stream_get_error
                - i_stream_set_error
                - connection_closed
                - i_unreached
            - BranchSide:      'connection.c:924,24'
              BranchSideFuncs:
                - i_stream_read
                - connection_closed
                - i_stream_get_error
                - i_stream_set_error
                - connection_closed
                - i_unreached
        - Branch String:   'connection.c:924,2'
          Branch Sides:
            - BranchSide:      'connection.c:927,11'
              BranchSideFuncs:
                - connection_closed
                - i_unreached
            - BranchSide:      'connection.c:938,7'
              BranchSideFuncs:
                - connection_closed
                - i_stream_get_error
                - i_stream_set_error
            - BranchSide:      'connection.c:946,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:949,3'
              BranchSideFuncs: []
        - Branch String:   'connection.c:927,3'
          Branch Sides:
            - BranchSide:      'connection.c:929,22'
              BranchSideFuncs:
                - connection_closed
            - BranchSide:      'connection.c:933,4'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:935,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'connection.c:938,7'
          Branch Sides:
            - BranchSide:      'connection.c:939,23'
              BranchSideFuncs:
                - i_stream_get_error
                - i_stream_set_error
                - connection_closed
            - BranchSide:      'connection.c:942,21'
              BranchSideFuncs:
                - connection_closed
      Callsites:
        - Src:             'connection.c:922,3'
          Dst:             timeout_reset
        - Src:             'connection.c:924,10'
          Dst:             i_stream_read
        - Src:             'connection.c:929,4'
          Dst:             connection_closed
        - Src:             'connection.c:935,3'
          Dst:             i_unreached
        - Src:             'connection.c:940,15'
          Dst:             i_stream_get_error
        - Src:             'connection.c:939,4'
          Dst:             i_stream_set_error
        - Src:             'connection.c:942,3'
          Dst:             connection_closed
    - functionName:    timeval_diff_msecs
      functionSourceFile: '/src/dovecot/src/lib/./time-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - tv1
        - tv2
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeval_diff_usecs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './time-util.h:26,9'
          Dst:             timeval_diff_usecs
    - functionName:    connection_input_timeout_reason
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 986
      functionLinenumberEnd: 1005
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         8
      ICount:          81
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - t_strdup_printf
        - timeval_diff_msecs
      functionUses:    0
      BranchProfiles:
        - Branch String:   'connection.c:987,6'
          Branch Sides:
            - BranchSide:      'connection.c:989,12'
              BranchSideFuncs:
                - timeval_diff_msecs
                - t_strdup_printf
            - BranchSide:      'connection.c:992,13'
              BranchSideFuncs:
                - timeval_diff_msecs
                - t_strdup_printf
                - timeval_diff_msecs
                - t_strdup_printf
        - Branch String:   'connection.c:992,13'
          Branch Sides:
            - BranchSide:      'connection.c:994,12'
              BranchSideFuncs:
                - timeval_diff_msecs
                - t_strdup_printf
            - BranchSide:      'connection.c:1000,12'
              BranchSideFuncs:
                - timeval_diff_msecs
                - t_strdup_printf
      Callsites:
        - Src:             'connection.c:988,20'
          Dst:             timeval_diff_msecs
        - Src:             'connection.c:990,10'
          Dst:             t_strdup_printf
        - Src:             'connection.c:993,20'
          Dst:             timeval_diff_msecs
        - Src:             'connection.c:995,10'
          Dst:             t_strdup_printf
        - Src:             'connection.c:999,20'
          Dst:             timeval_diff_msecs
        - Src:             'connection.c:1001,10'
          Dst:             t_strdup_printf
    - functionName:    connection_deinit
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 902
      functionLinenumberEnd: 914
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         24
      ICount:          154
      EdgeCount:       27
      CyclomaticComplexity: 5
      functionsReached:
        - connection_disconnect
        - event_unref
        - i_panic
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:903,2'
          Branch Sides:
            - BranchSide:      'connection.c:903,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:905,2'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4693
                - p_free_internal.4693
                - p_free_internal.4693
                - event_unref
        - Branch String:   'connection.c:906,2'
          Branch Sides:
            - BranchSide:      'connection.c:906,2'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4693
                - p_free_internal.4693
                - p_free_internal.4693
                - event_unref
            - BranchSide:      'connection.c:906,2'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4693
                - p_free_internal.4693
                - p_free_internal.4693
                - event_unref
        - Branch String:   'connection.c:906,2'
          Branch Sides:
            - BranchSide:      'connection.c:906,2'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4693
                - p_free_internal.4693
                - p_free_internal.4693
                - event_unref
            - BranchSide:      'connection.c:908,24'
              BranchSideFuncs:
                - connection_disconnect
                - p_free_internal.4693
                - p_free_internal.4693
                - p_free_internal.4693
                - event_unref
      Callsites:
        - Src:             'connection.c:903,2'
          Dst:             i_panic
        - Src:             'connection.c:908,2'
          Dst:             connection_disconnect
        - Src:             'connection.c:909,2'
          Dst:             p_free_internal
        - Src:             'connection.c:910,2'
          Dst:             p_free_internal
        - Src:             'connection.c:911,2'
          Dst:             p_free_internal
        - Src:             'connection.c:912,2'
          Dst:             event_unref
    - functionName:    connection_disconnect
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         14
      ICount:          149
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - connection_disconnect_reason
        - connection_update_counters
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - fd_close_maybe_stdio
        - i_stream_close
        - i_stream_destroy
        - io_remove
        - o_stream_close
        - o_stream_destroy
        - shutdown
        - timeout_remove
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:872,6'
          Branch Sides:
            - BranchSide:      'connection.c:873,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:874,29'
              BranchSideFuncs:
                - connection_update_counters
                - event_create_passthrough
                - connection_disconnect_reason
                - event_want_level
                - event_send_abort
                - timeout_remove
                - io_remove
                - i_stream_close
                - i_stream_destroy
                - o_stream_close
                - o_stream_destroy
                - fd_close_maybe_stdio
                - shutdown
                - connection_disconnect_reason
                - e_debug
        - Branch String:   'connection.c:884,2'
          Branch Sides:
            - BranchSide:      'connection.c:884,2'
              BranchSideFuncs:
                - connection_disconnect_reason
                - e_debug
                - timeout_remove
                - io_remove
                - i_stream_close
                - i_stream_destroy
                - o_stream_close
                - o_stream_destroy
                - fd_close_maybe_stdio
                - shutdown
            - BranchSide:      'connection.c:884,2'
              BranchSideFuncs:
                - event_send_abort
                - timeout_remove
                - io_remove
                - i_stream_close
                - i_stream_destroy
                - o_stream_close
                - o_stream_destroy
                - fd_close_maybe_stdio
                - shutdown
        - Branch String:   'connection.c:895,6'
          Branch Sides:
            - BranchSide:      'connection.c:896,18'
              BranchSideFuncs:
                - shutdown
                - fd_close_maybe_stdio
            - BranchSide:      'connection.c:897,24'
              BranchSideFuncs:
                - fd_close_maybe_stdio
      Callsites:
        - Src:             'connection.c:874,2'
          Dst:             connection_update_counters
        - Src:             'connection.c:881,32'
          Dst:             event_create_passthrough
        - Src:             'connection.c:883,21'
          Dst:             connection_disconnect_reason
        - Src:             'connection.c:884,2'
          Dst:             event_want_level
        - Src:             'connection.c:884,2'
          Dst:             connection_disconnect_reason
        - Src:             'connection.c:884,2'
          Dst:             e_debug
        - Src:             'connection.c:884,2'
          Dst:             event_send_abort
        - Src:             'connection.c:889,2'
          Dst:             timeout_remove
        - Src:             'connection.c:890,2'
          Dst:             io_remove
        - Src:             'connection.c:891,2'
          Dst:             i_stream_close
        - Src:             'connection.c:892,2'
          Dst:             i_stream_destroy
        - Src:             'connection.c:893,2'
          Dst:             o_stream_close
        - Src:             'connection.c:894,2'
          Dst:             o_stream_destroy
        - Src:             'connection.c:896,9'
          Dst:             shutdown
        - Src:             'connection.c:897,2'
          Dst:             fd_close_maybe_stdio
    - functionName:    connection_update_counters
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - event_add_int
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:864,6'
          Branch Sides:
            - BranchSide:      'connection.c:865,17'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
            - BranchSide:      'connection.c:866,6'
              BranchSideFuncs:
                - event_add_int
        - Branch String:   'connection.c:866,6'
          Branch Sides:
            - BranchSide:      'connection.c:866,6'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'connection.c:867,17'
              BranchSideFuncs:
                - event_add_int
      Callsites:
        - Src:             'connection.c:865,3'
          Dst:             event_add_int
        - Src:             'connection.c:867,3'
          Dst:             event_add_int
    - functionName:    connection_disconnect_reason
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         15
      ICount:          99
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached:
        - i_unreached
        - io_stream_get_disconnect_reason
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:960,2'
          Branch Sides:
            - BranchSide:      'connection.c:962,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:965,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'connection.c:970,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:972,7'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
                - t_strdup_printf
            - BranchSide:      'connection.c:978,42'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
            - BranchSide:      'connection.c:978,42'
              BranchSideFuncs:
                - io_stream_get_disconnect_reason
            - BranchSide:      'connection.c:980,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:982,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'connection.c:972,7'
          Branch Sides:
            - BranchSide:      'connection.c:972,22'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'connection.c:974,7'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'connection.c:966,10'
          Dst:             t_strdup_printf
        - Src:             'connection.c:973,11'
          Dst:             t_strdup_printf
        - Src:             'connection.c:978,10'
          Dst:             io_stream_get_disconnect_reason
        - Src:             'connection.c:982,2'
          Dst:             i_unreached
    - functionName:    connection_client_connect_failed
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - connection_closed
        - timeout_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:843,2'
          Dst:             timeout_remove
        - Src:             'connection.c:844,2'
          Dst:             __errno_location
        - Src:             'connection.c:846,2'
          Dst:             connection_closed
    - functionName:    connection_client_connect_async
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         14
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - connection_client_connect
        - connection_client_connect_failed
        - i_panic
        - timeout_add_short
      functionUses:    0
      BranchProfiles:
        - Branch String:   'connection.c:851,2'
          Branch Sides:
            - BranchSide:      'connection.c:851,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:853,32'
              BranchSideFuncs:
                - connection_client_connect
                - __errno_location
                - timeout_add_short
                - i_panic
        - Branch String:   'connection.c:853,6'
          Branch Sides:
            - BranchSide:      'connection.c:854,3'
              BranchSideFuncs:
                - __errno_location
                - timeout_add_short
                - i_panic
            - BranchSide:      'connection.c:859,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:854,3'
          Branch Sides:
            - BranchSide:      'connection.c:854,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:855,32'
              BranchSideFuncs:
                - __errno_location
                - timeout_add_short
      Callsites:
        - Src:             'connection.c:851,2'
          Dst:             i_panic
        - Src:             'connection.c:853,6'
          Dst:             connection_client_connect
        - Src:             'connection.c:854,3'
          Dst:             i_panic
        - Src:             'connection.c:855,32'
          Dst:             __errno_location
        - Src:             'connection.c:856,14'
          Dst:             timeout_add_short
        - Src:             'connection.c:856,14'
          Dst:             connection_client_connect_failed
    - functionName:    connection_client_connect
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 836
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_client_connect_with_retries
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:837,9'
          Dst:             connection_client_connect_with_retries
    - functionName:    connection_client_connect_with_retries
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - conn
        - msecs
      BBCount:         48
      ICount:          313
      EdgeCount:       59
      CyclomaticComplexity: 13
      functionsReached:
        - connection_client_connected
        - connection_socket_connected
        - connection_update_properties
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - io_add_to
        - net_connect_ip
        - net_connect_unix
        - net_connect_unix_with_retries
        - timeout_add_to
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:796,2'
          Branch Sides:
            - BranchSide:      'connection.c:796,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:797,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - net_connect_unix_with_retries
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
                - net_connect_unix
                - net_connect_ip
                - e_debug
                - i_panic
        - Branch String:   'connection.c:797,2'
          Branch Sides:
            - BranchSide:      'connection.c:797,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:799,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - net_connect_unix_with_retries
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
                - net_connect_unix
                - net_connect_ip
                - e_debug
        - Branch String:   'connection.c:799,2'
          Branch Sides:
            - BranchSide:      'connection.c:799,2'
              BranchSideFuncs:
                - e_debug
                - net_connect_unix_with_retries
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
                - net_connect_unix
                - net_connect_ip
            - BranchSide:      'connection.c:799,2'
              BranchSideFuncs:
                - event_send_abort
                - net_connect_unix_with_retries
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
                - net_connect_unix
                - net_connect_ip
        - Branch String:   'connection.c:801,6'
          Branch Sides:
            - BranchSide:      'connection.c:802,24'
              BranchSideFuncs:
                - net_connect_ip
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
            - BranchSide:      'connection.c:805,13'
              BranchSideFuncs:
                - net_connect_unix_with_retries
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
                - net_connect_unix
        - Branch String:   'connection.c:803,10'
          Branch Sides:
            - BranchSide:      'connection.c:802,8'
              BranchSideFuncs:
                - net_connect_ip
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
            - BranchSide:      'connection.c:804,11'
              BranchSideFuncs:
                - net_connect_ip
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
        - Branch String:   'connection.c:805,13'
          Branch Sides:
            - BranchSide:      'connection.c:806,25'
              BranchSideFuncs:
                - net_connect_unix
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
            - BranchSide:      'connection.c:808,38'
              BranchSideFuncs:
                - net_connect_unix_with_retries
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
        - Branch String:   'connection.c:810,6'
          Branch Sides:
            - BranchSide:      'connection.c:811,3'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:812,31'
              BranchSideFuncs:
                - connection_client_connected
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
        - Branch String:   'connection.c:816,29'
          Branch Sides:
            - BranchSide:      'connection.c:817,6'
              BranchSideFuncs:
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
            - BranchSide:      'connection.c:818,32'
              BranchSideFuncs:
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
        - Branch String:   'connection.c:816,6'
          Branch Sides:
            - BranchSide:      'connection.c:818,32'
              BranchSideFuncs:
                - connection_update_properties
                - io_add_to
                - event_want_level
                - event_send_abort
                - timeout_add_to
                - e_debug
            - BranchSide:      'connection.c:830,31'
              BranchSideFuncs:
                - connection_client_connected
        - Branch String:   'connection.c:821,3'
          Branch Sides:
            - BranchSide:      'connection.c:821,3'
              BranchSideFuncs:
                - e_debug
                - timeout_add_to
            - BranchSide:      'connection.c:821,3'
              BranchSideFuncs:
                - event_send_abort
                - timeout_add_to
        - Branch String:   'connection.c:824,7'
          Branch Sides:
            - BranchSide:      'connection.c:825,15'
              BranchSideFuncs:
                - timeout_add_to
            - BranchSide:      'connection.c:829,2'
              BranchSideFuncs: []
        - Branch String:   'connection.c:825,15'
          Branch Sides:
            - BranchSide:      'connection.c:825,15'
              BranchSideFuncs:
                - timeout_add_to
            - BranchSide:      'connection.c:829,2'
              BranchSideFuncs:
                - timeout_add_to
      Callsites:
        - Src:             'connection.c:796,2'
          Dst:             i_panic
        - Src:             'connection.c:797,2'
          Dst:             i_panic
        - Src:             'connection.c:799,2'
          Dst:             event_want_level
        - Src:             'connection.c:799,2'
          Dst:             e_debug
        - Src:             'connection.c:799,2'
          Dst:             event_send_abort
        - Src:             'connection.c:802,8'
          Dst:             net_connect_ip
        - Src:             'connection.c:806,8'
          Dst:             net_connect_unix
        - Src:             'connection.c:808,8'
          Dst:             net_connect_unix_with_retries
        - Src:             'connection.c:818,3'
          Dst:             connection_update_properties
        - Src:             'connection.c:819,14'
          Dst:             io_add_to
        - Src:             'connection.c:819,14'
          Dst:             connection_socket_connected
        - Src:             'connection.c:821,3'
          Dst:             event_want_level
        - Src:             'connection.c:821,3'
          Dst:             e_debug
        - Src:             'connection.c:821,3'
          Dst:             event_send_abort
        - Src:             'connection.c:825,15'
          Dst:             timeout_add_to
        - Src:             'connection.c:830,3'
          Dst:             connection_client_connected
    - functionName:    connection_update_properties
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         34
      ICount:          207
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - connection_update_event
        - connection_update_label
        - connection_update_property_label
        - connection_update_stream_names
        - i_panic
        - net_getpeername
        - net_getunixcred
      functionUses:    4
      BranchProfiles:
        - Branch String:   'connection.c:466,12'
          Branch Sides:
            - BranchSide:      'connection.c:466,30'
              BranchSideFuncs:
                - net_getpeername
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
                - __errno_location
            - BranchSide:      'connection.c:466,45'
              BranchSideFuncs:
                - net_getpeername
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
                - __errno_location
        - Branch String:   'connection.c:469,6'
          Branch Sides:
            - BranchSide:      'connection.c:471,2'
              BranchSideFuncs:
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
            - BranchSide:      'connection.c:471,13'
              BranchSideFuncs:
                - net_getpeername
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
                - __errno_location
        - Branch String:   'connection.c:471,13'
          Branch Sides:
            - BranchSide:      'connection.c:473,2'
              BranchSideFuncs:
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
            - BranchSide:      'connection.c:473,13'
              BranchSideFuncs:
                - net_getpeername
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
                - __errno_location
        - Branch String:   'connection.c:473,13'
          Branch Sides:
            - BranchSide:      'connection.c:475,2'
              BranchSideFuncs:
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
            - BranchSide:      'connection.c:476,23'
              BranchSideFuncs:
                - net_getpeername
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
                - __errno_location
        - Branch String:   'connection.c:476,7'
          Branch Sides:
            - BranchSide:      'connection.c:479,4'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
            - BranchSide:      'connection.c:482,7'
              BranchSideFuncs:
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
        - Branch String:   'connection.c:482,7'
          Branch Sides:
            - BranchSide:      'connection.c:484,4'
              BranchSideFuncs:
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
                - i_panic
            - BranchSide:      'connection.c:485,14'
              BranchSideFuncs:
                - __errno_location
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
        - Branch String:   'connection.c:484,4'
          Branch Sides:
            - BranchSide:      'connection.c:484,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:485,3'
              BranchSideFuncs:
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
        - Branch String:   'connection.c:485,14'
          Branch Sides:
            - BranchSide:      'connection.c:488,3'
              BranchSideFuncs:
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
            - BranchSide:      'connection.c:488,30'
              BranchSideFuncs:
                - net_getunixcred
                - connection_update_property_label
                - connection_update_label
                - connection_update_stream_names
                - connection_update_event
        - Branch String:   'connection.c:502,16'
          Branch Sides:
            - BranchSide:      'connection.c:503,9'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:503,27'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:476,7'
          Dst:             net_getpeername
        - Src:             'connection.c:479,4'
          Dst:             __errno_location
        - Src:             'connection.c:484,4'
          Dst:             i_panic
        - Src:             'connection.c:485,14'
          Dst:             __errno_location
        - Src:             'connection.c:488,14'
          Dst:             net_getunixcred
        - Src:             'connection.c:497,2'
          Dst:             connection_update_property_label
        - Src:             'connection.c:498,2'
          Dst:             connection_update_label
        - Src:             'connection.c:499,2'
          Dst:             connection_update_stream_names
        - Src:             'connection.c:500,2'
          Dst:             connection_update_event
    - functionName:    connection_socket_connected
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 788
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - connection_client_connected
        - io_remove
        - net_geterror
        - timeout_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:783,2'
          Dst:             io_remove
        - Src:             'connection.c:784,2'
          Dst:             timeout_remove
        - Src:             'connection.c:786,10'
          Dst:             net_geterror
        - Src:             'connection.c:786,2'
          Dst:             __errno_location
        - Src:             'connection.c:787,36'
          Dst:             __errno_location
        - Src:             'connection.c:787,2'
          Dst:             connection_client_connected
    - functionName:    connection_client_connected
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - conn
        - success
      BBCount:         29
      ICount:          175
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - connection_closed
        - connection_init_streams
        - connection_update_properties
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'connection.c:564,2'
          Branch Sides:
            - BranchSide:      'connection.c:564,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:566,31'
              BranchSideFuncs:
                - connection_update_properties
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - connection_closed
                - connection_init_streams
                - e_debug
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'connection.c:572,6'
          Branch Sides:
            - BranchSide:      'connection.c:573,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - connection_closed
                - connection_init_streams
                - e_debug
            - BranchSide:      'connection.c:576,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - connection_closed
                - connection_init_streams
                - e_debug
        - Branch String:   'connection.c:573,3'
          Branch Sides:
            - BranchSide:      'connection.c:573,3'
              BranchSideFuncs:
                - e_debug
                - connection_closed
                - connection_init_streams
            - BranchSide:      'connection.c:573,3'
              BranchSideFuncs:
                - event_send_abort
                - connection_closed
                - connection_init_streams
        - Branch String:   'connection.c:576,3'
          Branch Sides:
            - BranchSide:      'connection.c:576,3'
              BranchSideFuncs:
                - e_debug
                - connection_closed
                - connection_init_streams
            - BranchSide:      'connection.c:576,3'
              BranchSideFuncs:
                - event_send_abort
                - connection_closed
                - connection_init_streams
        - Branch String:   'connection.c:580,6'
          Branch Sides:
            - BranchSide:      'connection.c:581,27'
              BranchSideFuncs:
                - connection_init_streams
                - connection_closed
            - BranchSide:      'connection.c:582,6'
              BranchSideFuncs:
                - connection_closed
        - Branch String:   'connection.c:582,6'
          Branch Sides:
            - BranchSide:      'connection.c:583,3'
              BranchSideFuncs:
                - connection_closed
            - BranchSide:      'connection.c:584,7'
              BranchSideFuncs:
                - connection_closed
        - Branch String:   'connection.c:584,6'
          Branch Sides:
            - BranchSide:      'connection.c:584,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:585,21'
              BranchSideFuncs:
                - connection_closed
      Callsites:
        - Src:             'connection.c:564,2'
          Dst:             i_panic
        - Src:             'connection.c:566,2'
          Dst:             connection_update_properties
        - Src:             'connection.c:570,32'
          Dst:             event_create_passthrough
        - Src:             'connection.c:573,3'
          Dst:             event_want_level
        - Src:             'connection.c:573,3'
          Dst:             e_debug
        - Src:             'connection.c:573,3'
          Dst:             event_send_abort
        - Src:             'connection.c:576,3'
          Dst:             event_want_level
        - Src:             'connection.c:576,3'
          Dst:             e_debug
        - Src:             'connection.c:576,3'
          Dst:             event_send_abort
        - Src:             'connection.c:581,3'
          Dst:             connection_init_streams
        - Src:             'connection.c:585,3'
          Dst:             connection_closed
    - functionName:    connection_init_streams
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         52
      ICount:          344
      EdgeCount:       60
      CyclomaticComplexity: 10
      functionsReached:
        - connection_input_resume_full
        - connection_update_stream_names
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - i_stream_create_fd
        - i_stream_create_unix
        - i_stream_switch_ioloop_to
        - o_stream_create_fd
        - o_stream_create_unix
        - o_stream_nsend_str
        - o_stream_set_finish_via_child
        - o_stream_set_no_error_handling
        - o_stream_switch_ioloop_to
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:510,2'
          Branch Sides:
            - BranchSide:      'connection.c:510,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:511,2'
              BranchSideFuncs:
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
                - i_stream_create_fd
                - i_stream_switch_ioloop_to
                - i_stream_create_unix
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'connection.c:511,2'
          Branch Sides:
            - BranchSide:      'connection.c:511,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:512,2'
              BranchSideFuncs:
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
                - i_stream_create_fd
                - i_stream_switch_ioloop_to
                - i_stream_create_unix
                - i_panic
                - i_panic
        - Branch String:   'connection.c:512,2'
          Branch Sides:
            - BranchSide:      'connection.c:512,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:513,2'
              BranchSideFuncs:
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
                - i_stream_create_fd
                - i_stream_switch_ioloop_to
                - i_stream_create_unix
                - i_panic
        - Branch String:   'connection.c:513,2'
          Branch Sides:
            - BranchSide:      'connection.c:513,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:515,2'
              BranchSideFuncs:
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
                - i_stream_create_fd
                - i_stream_switch_ioloop_to
                - i_stream_create_unix
        - Branch String:   'connection.c:518,6'
          Branch Sides:
            - BranchSide:      'connection.c:519,7'
              BranchSideFuncs:
                - i_stream_create_fd
                - i_stream_switch_ioloop_to
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
                - i_stream_create_unix
            - BranchSide:      'connection.c:527,6'
              BranchSideFuncs:
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
        - Branch String:   'connection.c:519,7'
          Branch Sides:
            - BranchSide:      'connection.c:520,39'
              BranchSideFuncs:
                - i_stream_create_unix
                - i_stream_switch_ioloop_to
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
            - BranchSide:      'connection.c:523,37'
              BranchSideFuncs:
                - i_stream_create_fd
                - i_stream_switch_ioloop_to
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - o_stream_create_unix
        - Branch String:   'connection.c:527,6'
          Branch Sides:
            - BranchSide:      'connection.c:528,7'
              BranchSideFuncs:
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
                - o_stream_create_unix
            - BranchSide:      'connection.c:538,33'
              BranchSideFuncs:
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'connection.c:528,7'
          Branch Sides:
            - BranchSide:      'connection.c:529,40'
              BranchSideFuncs:
                - o_stream_create_unix
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
            - BranchSide:      'connection.c:532,38'
              BranchSideFuncs:
                - o_stream_create_fd
                - o_stream_set_no_error_handling
                - o_stream_set_finish_via_child
                - o_stream_switch_ioloop_to
                - connection_update_stream_names
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
                - i_panic
        - Branch String:   'connection.c:541,2'
          Branch Sides:
            - BranchSide:      'connection.c:541,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:542,31'
              BranchSideFuncs:
                - connection_input_resume_full
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
        - Branch String:   'connection.c:543,2'
          Branch Sides:
            - BranchSide:      'connection.c:543,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
            - BranchSide:      'connection.c:543,2'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
                - i_panic
        - Branch String:   'connection.c:543,2'
          Branch Sides:
            - BranchSide:      'connection.c:543,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:544,6'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
        - Branch String:   'connection.c:544,30'
          Branch Sides:
            - BranchSide:      'connection.c:544,34'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
            - BranchSide:      'connection.c:544,30'
              BranchSideFuncs: []
        - Branch String:   'connection.c:544,6'
          Branch Sides:
            - BranchSide:      'connection.c:544,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:545,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
                - e_debug
        - Branch String:   'connection.c:545,3'
          Branch Sides:
            - BranchSide:      'connection.c:545,3'
              BranchSideFuncs:
                - e_debug
                - t_strdup_printf
                - o_stream_nsend_str
            - BranchSide:      'connection.c:545,3'
              BranchSideFuncs:
                - event_send_abort
                - t_strdup_printf
                - o_stream_nsend_str
      Callsites:
        - Src:             'connection.c:510,2'
          Dst:             i_panic
        - Src:             'connection.c:511,2'
          Dst:             i_panic
        - Src:             'connection.c:512,2'
          Dst:             i_panic
        - Src:             'connection.c:513,2'
          Dst:             i_panic
        - Src:             'connection.c:520,18'
          Dst:             i_stream_create_unix
        - Src:             'connection.c:523,18'
          Dst:             i_stream_create_fd
        - Src:             'connection.c:525,3'
          Dst:             i_stream_switch_ioloop_to
        - Src:             'connection.c:529,19'
          Dst:             o_stream_create_unix
        - Src:             'connection.c:532,19'
          Dst:             o_stream_create_fd
        - Src:             'connection.c:534,3'
          Dst:             o_stream_set_no_error_handling
        - Src:             'connection.c:535,3'
          Dst:             o_stream_set_finish_via_child
        - Src:             'connection.c:536,3'
          Dst:             o_stream_switch_ioloop_to
        - Src:             'connection.c:538,2'
          Dst:             connection_update_stream_names
        - Src:             'connection.c:541,2'
          Dst:             i_panic
        - Src:             'connection.c:542,2'
          Dst:             connection_input_resume_full
        - Src:             'connection.c:543,2'
          Dst:             i_panic
        - Src:             'connection.c:545,3'
          Dst:             event_want_level
        - Src:             'connection.c:545,3'
          Dst:             e_debug
        - Src:             'connection.c:545,3'
          Dst:             event_send_abort
        - Src:             'connection.c:546,36'
          Dst:             t_strdup_printf
        - Src:             'connection.c:546,3'
          Dst:             o_stream_nsend_str
    - functionName:    connection_update_stream_names
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - connection_create_stream_name
        - i_stream_set_name
        - o_stream_set_name
      functionUses:    3
      BranchProfiles:
        - Branch String:   'connection.c:414,6'
          Branch Sides:
            - BranchSide:      'connection.c:416,4'
              BranchSideFuncs:
                - connection_create_stream_name
                - i_stream_set_name
                - connection_create_stream_name
                - o_stream_set_name
            - BranchSide:      'connection.c:419,6'
              BranchSideFuncs:
                - connection_create_stream_name
                - o_stream_set_name
        - Branch String:   'connection.c:419,6'
          Branch Sides:
            - BranchSide:      'connection.c:419,6'
              BranchSideFuncs:
                - connection_create_stream_name
                - o_stream_set_name
            - BranchSide:      'connection.c:421,4'
              BranchSideFuncs:
                - connection_create_stream_name
                - o_stream_set_name
      Callsites:
        - Src:             'connection.c:417,4'
          Dst:             connection_create_stream_name
        - Src:             'connection.c:415,3'
          Dst:             i_stream_set_name
        - Src:             'connection.c:422,4'
          Dst:             connection_create_stream_name
        - Src:             'connection.c:420,3'
          Dst:             o_stream_set_name
    - functionName:    connection_update_property_label
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         34
      ICount:          199
      EdgeCount:       42
      CyclomaticComplexity: 10
      functionsReached:
        - e_debug
        - event_send_abort
        - event_want_level
        - i_panic
        - i_strdup
        - net_ip2addr
        - p_free_internal
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:309,6'
          Branch Sides:
            - BranchSide:      'connection.c:310,7'
              BranchSideFuncs:
                - t_strdup_printf
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - t_strdup_printf
            - BranchSide:      'connection.c:320,13'
              BranchSideFuncs:
                - net_ip2addr
                - t_strdup_printf
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - net_ip2addr
                - t_strdup_printf
        - Branch String:   'connection.c:310,7'
          Branch Sides:
            - BranchSide:      'connection.c:311,10'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'connection.c:312,12'
              BranchSideFuncs:
                - t_strdup_printf
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
                - t_strdup_printf
        - Branch String:   'connection.c:312,12'
          Branch Sides:
            - BranchSide:      'connection.c:314,13'
              BranchSideFuncs:
                - t_strdup_printf
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'connection.c:318,13'
              BranchSideFuncs:
                - t_strdup_printf
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
        - Branch String:   'connection.c:320,13'
          Branch Sides:
            - BranchSide:      'connection.c:322,19'
              BranchSideFuncs:
                - net_ip2addr
                - t_strdup_printf
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'connection.c:326,19'
              BranchSideFuncs:
                - net_ip2addr
                - t_strdup_printf
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
        - Branch String:   'connection.c:330,2'
          Branch Sides:
            - BranchSide:      'connection.c:330,2'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
            - BranchSide:      'connection.c:330,2'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
                - i_panic
        - Branch String:   'connection.c:330,2'
          Branch Sides:
            - BranchSide:      'connection.c:330,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:331,6'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - strcmp
                - event_want_level
                - event_send_abort
                - e_debug
        - Branch String:   'connection.c:331,35'
          Branch Sides:
            - BranchSide:      'connection.c:332,13'
              BranchSideFuncs:
                - strcmp
                - p_free_internal.4693
                - i_strdup
                - event_want_level
                - event_send_abort
                - e_debug
            - BranchSide:      'connection.c:336,2'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
        - Branch String:   'connection.c:331,6'
          Branch Sides:
            - BranchSide:      'connection.c:333,3'
              BranchSideFuncs:
                - event_want_level
                - event_send_abort
                - p_free_internal.4693
                - i_strdup
                - e_debug
            - BranchSide:      'connection.c:336,2'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
        - Branch String:   'connection.c:333,3'
          Branch Sides:
            - BranchSide:      'connection.c:333,3'
              BranchSideFuncs:
                - e_debug
                - p_free_internal.4693
                - i_strdup
            - BranchSide:      'connection.c:333,3'
              BranchSideFuncs:
                - event_send_abort
                - p_free_internal.4693
                - i_strdup
      Callsites:
        - Src:             'connection.c:313,12'
          Dst:             t_strdup_printf
        - Src:             'connection.c:317,12'
          Dst:             t_strdup_printf
        - Src:             'connection.c:322,6'
          Dst:             net_ip2addr
        - Src:             'connection.c:321,11'
          Dst:             t_strdup_printf
        - Src:             'connection.c:326,6'
          Dst:             net_ip2addr
        - Src:             'connection.c:325,11'
          Dst:             t_strdup_printf
        - Src:             'connection.c:330,2'
          Dst:             i_panic
        - Src:             'connection.c:332,6'
          Dst:             strcmp
        - Src:             'connection.c:333,3'
          Dst:             event_want_level
        - Src:             'connection.c:333,3'
          Dst:             e_debug
        - Src:             'connection.c:333,3'
          Dst:             event_send_abort
        - Src:             'connection.c:336,2'
          Dst:             p_free_internal
        - Src:             'connection.c:337,25'
          Dst:             i_strdup
    - functionName:    connection_update_label
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         54
      ICount:          302
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - i_strdup
        - p_free_internal
        - str_append
        - str_append_c
        - str_c
        - str_insert
        - str_len
        - str_printfa
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:342,39'
          Branch Sides:
            - BranchSide:      'connection.c:342,7'
              BranchSideFuncs:
                - t_str_new
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4674
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
            - BranchSide:      'connection.c:343,4'
              BranchSideFuncs:
                - t_str_new
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4674
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
        - Branch String:   'connection.c:343,32'
          Branch Sides:
            - BranchSide:      'connection.c:342,39'
              BranchSideFuncs:
                - t_str_new
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4674
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
            - BranchSide:      'connection.c:343,35'
              BranchSideFuncs:
                - t_str_new
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4674
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
        - Branch String:   'connection.c:347,6'
          Branch Sides:
            - BranchSide:      'connection.c:348,14'
              BranchSideFuncs:
                - str_append.4670
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4674
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
            - BranchSide:      'connection.c:349,6'
              BranchSideFuncs:
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
                - str_len.4674
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_append.4670
        - Branch String:   'connection.c:349,6'
          Branch Sides:
            - BranchSide:      'connection.c:350,15'
              BranchSideFuncs:
                - str_len.4674
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
                - str_append.4670
            - BranchSide:      'connection.c:358,14'
              BranchSideFuncs:
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:350,7'
          Branch Sides:
            - BranchSide:      'connection.c:351,15'
              BranchSideFuncs:
                - str_append.4670
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:353,15'
              BranchSideFuncs:
                - str_append.4670
                - str_append.4670
                - str_append.4670
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:358,6'
          Branch Sides:
            - BranchSide:      'connection.c:359,7'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:369,6'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
        - Branch String:   'connection.c:359,24'
          Branch Sides:
            - BranchSide:      'connection.c:360,8'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:362,12'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:360,36'
          Branch Sides:
            - BranchSide:      'connection.c:360,39'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
            - BranchSide:      'connection.c:361,16'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
        - Branch String:   'connection.c:359,7'
          Branch Sides:
            - BranchSide:      'connection.c:361,16'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
            - BranchSide:      'connection.c:362,12'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
        - Branch String:   'connection.c:362,28'
          Branch Sides:
            - BranchSide:      'connection.c:362,31'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
                - str_printfa
            - BranchSide:      'connection.c:364,12'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
        - Branch String:   'connection.c:362,12'
          Branch Sides:
            - BranchSide:      'connection.c:363,16'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
            - BranchSide:      'connection.c:364,12'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_len.4674
                - str_insert.4676
                - str_printfa
        - Branch String:   'connection.c:369,18'
          Branch Sides:
            - BranchSide:      'connection.c:369,29'
              BranchSideFuncs:
                - str_len.4674
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
                - str_insert.4676
            - BranchSide:      'connection.c:371,6'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
        - Branch String:   'connection.c:369,6'
          Branch Sides:
            - BranchSide:      'connection.c:370,14'
              BranchSideFuncs:
                - str_insert.4676
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
            - BranchSide:      'connection.c:371,6'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_len.4674
                - str_printfa
                - str_append_c.4672
        - Branch String:   'connection.c:371,6'
          Branch Sides:
            - BranchSide:      'connection.c:372,15'
              BranchSideFuncs:
                - str_len.4674
                - str_printfa
                - p_free_internal.4693
                - str_c
                - i_strdup
                - str_append_c.4672
            - BranchSide:      'connection.c:377,2'
              BranchSideFuncs:
                - p_free_internal.4693
                - str_c
                - i_strdup
        - Branch String:   'connection.c:372,7'
          Branch Sides:
            - BranchSide:      'connection.c:373,4'
              BranchSideFuncs:
                - str_append_c.4672
                - str_printfa
                - p_free_internal.4693
                - str_c
                - i_strdup
            - BranchSide:      'connection.c:374,15'
              BranchSideFuncs:
                - str_printfa
                - p_free_internal.4693
                - str_c
                - i_strdup
      Callsites:
        - Src:             'connection.c:346,10'
          Dst:             t_str_new
        - Src:             'connection.c:348,3'
          Dst:             str_append
        - Src:             'connection.c:350,7'
          Dst:             str_len
        - Src:             'connection.c:351,4'
          Dst:             str_append
        - Src:             'connection.c:353,4'
          Dst:             str_append
        - Src:             'connection.c:354,4'
          Dst:             str_append
        - Src:             'connection.c:355,4'
          Dst:             str_append
        - Src:             'connection.c:358,6'
          Dst:             str_len
        - Src:             'connection.c:361,4'
          Dst:             str_printfa
        - Src:             'connection.c:363,4'
          Dst:             str_printfa
        - Src:             'connection.c:365,4'
          Dst:             str_printfa
        - Src:             'connection.c:369,21'
          Dst:             str_len
        - Src:             'connection.c:370,3'
          Dst:             str_insert
        - Src:             'connection.c:372,7'
          Dst:             str_len
        - Src:             'connection.c:373,4'
          Dst:             str_append_c
        - Src:             'connection.c:374,3'
          Dst:             str_printfa
        - Src:             'connection.c:377,2'
          Dst:             p_free_internal
        - Src:             'connection.c:378,25'
          Dst:             str_c
        - Src:             'connection.c:378,16'
          Dst:             i_strdup
    - functionName:    connection_update_event
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         24
      ICount:          212
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - event_add_int
        - event_add_str
        - event_set_append_log_prefix
        - net_ip2addr
        - str_append
        - str_append_c
        - str_c
        - strlen
        - t_str_new
      functionUses:    2
      BranchProfiles:
        - Branch String:   'connection.c:432,6'
          Branch Sides:
            - BranchSide:      'connection.c:433,3'
              BranchSideFuncs:
                - str_append_c.4672
                - str_append.4670
                - str_append.4670
                - str_c
                - event_set_append_log_prefix
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_int
                - net_ip2addr
                - event_add_str
                - net_ip2addr
                - event_add_str
            - BranchSide:      'connection.c:436,13'
              BranchSideFuncs:
                - str_append.4670
                - str_c
                - event_set_append_log_prefix
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_int
                - net_ip2addr
                - event_add_str
                - net_ip2addr
                - event_add_str
        - Branch String:   'connection.c:439,6'
          Branch Sides:
            - BranchSide:      'connection.c:440,17'
              BranchSideFuncs:
                - net_ip2addr
                - event_add_str
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_int
                - net_ip2addr
                - event_add_str
            - BranchSide:      'connection.c:445,6'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_int
                - net_ip2addr
                - event_add_str
        - Branch String:   'connection.c:445,6'
          Branch Sides:
            - BranchSide:      'connection.c:446,17'
              BranchSideFuncs:
                - net_ip2addr
                - event_add_str
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_int
            - BranchSide:      'connection.c:450,6'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_int
        - Branch String:   'connection.c:450,6'
          Branch Sides:
            - BranchSide:      'connection.c:451,17'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_int
            - BranchSide:      'connection.c:456,6'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
                - event_add_int
        - Branch String:   'connection.c:456,6'
          Branch Sides:
            - BranchSide:      'connection.c:457,17'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
                - event_add_int
            - BranchSide:      'connection.c:458,6'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
        - Branch String:   'connection.c:458,6'
          Branch Sides:
            - BranchSide:      'connection.c:459,17'
              BranchSideFuncs:
                - event_add_int
                - event_add_int
            - BranchSide:      'connection.c:460,6'
              BranchSideFuncs:
                - event_add_int
        - Branch String:   'connection.c:460,6'
          Branch Sides:
            - BranchSide:      'connection.c:460,6'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'connection.c:461,17'
              BranchSideFuncs:
                - event_add_int
      Callsites:
        - Src:             'connection.c:430,11'
          Dst:             t_str_new
        - Src:             'connection.c:431,2'
          Dst:             str_append
        - Src:             'connection.c:432,6'
          Dst:             strlen
        - Src:             'connection.c:433,3'
          Dst:             str_append_c
        - Src:             'connection.c:434,3'
          Dst:             str_append
        - Src:             'connection.c:436,2'
          Dst:             str_append
        - Src:             'connection.c:437,43'
          Dst:             str_c
        - Src:             'connection.c:437,2'
          Dst:             event_set_append_log_prefix
        - Src:             'connection.c:442,10'
          Dst:             net_ip2addr
        - Src:             'connection.c:440,3'
          Dst:             event_add_str
        - Src:             'connection.c:448,10'
          Dst:             net_ip2addr
        - Src:             'connection.c:446,3'
          Dst:             event_add_str
        - Src:             'connection.c:451,3'
          Dst:             event_add_int
        - Src:             'connection.c:457,3'
          Dst:             event_add_int
        - Src:             'connection.c:459,3'
          Dst:             event_add_int
        - Src:             'connection.c:461,3'
          Dst:             event_add_int
    - functionName:    connection_init_from_streams
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - conn
        - name
        - input
        - output
      BBCount:         30
      ICount:          196
      EdgeCount:       31
      CyclomaticComplexity: 3
      functionsReached:
        - connection_init_full
        - connection_input_resume_full
        - connection_update_stream_names
        - i_panic
        - i_stream_get_fd
        - i_stream_ref
        - o_stream_get_fd
        - o_stream_ref
        - o_stream_set_no_error_handling
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:758,2'
          Branch Sides:
            - BranchSide:      'connection.c:758,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:759,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - o_stream_set_no_error_handling
                - connection_update_stream_names
                - connection_input_resume_full
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'connection.c:759,2'
          Branch Sides:
            - BranchSide:      'connection.c:759,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:760,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - o_stream_set_no_error_handling
                - connection_update_stream_names
                - connection_input_resume_full
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'connection.c:760,2'
          Branch Sides:
            - BranchSide:      'connection.c:760,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:761,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - o_stream_set_no_error_handling
                - connection_update_stream_names
                - connection_input_resume_full
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'connection.c:761,2'
          Branch Sides:
            - BranchSide:      'connection.c:761,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:762,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - o_stream_set_no_error_handling
                - connection_update_stream_names
                - connection_input_resume_full
                - i_panic
                - i_panic
        - Branch String:   'connection.c:762,2'
          Branch Sides:
            - BranchSide:      'connection.c:762,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:763,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - o_stream_set_no_error_handling
                - connection_update_stream_names
                - connection_input_resume_full
                - i_panic
        - Branch String:   'connection.c:763,2'
          Branch Sides:
            - BranchSide:      'connection.c:763,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:765,16'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - o_stream_set_no_error_handling
                - connection_update_stream_names
                - connection_input_resume_full
        - Branch String:   'connection.c:777,6'
          Branch Sides:
            - BranchSide:      'connection.c:777,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:778,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:756,9'
          Dst:             i_stream_get_fd
        - Src:             'connection.c:756,33'
          Dst:             o_stream_get_fd
        - Src:             'connection.c:755,2'
          Dst:             connection_init_full
        - Src:             'connection.c:758,2'
          Dst:             i_panic
        - Src:             'connection.c:759,2'
          Dst:             i_panic
        - Src:             'connection.c:760,2'
          Dst:             i_panic
        - Src:             'connection.c:761,2'
          Dst:             i_panic
        - Src:             'connection.c:762,2'
          Dst:             i_panic
        - Src:             'connection.c:763,2'
          Dst:             i_panic
        - Src:             'connection.c:766,2'
          Dst:             i_stream_ref
        - Src:             'connection.c:769,2'
          Dst:             o_stream_ref
        - Src:             'connection.c:770,2'
          Dst:             o_stream_set_no_error_handling
        - Src:             'connection.c:772,2'
          Dst:             connection_update_stream_names
        - Src:             'connection.c:775,2'
          Dst:             connection_input_resume_full
    - functionName:    connection_init_full
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - list
        - conn
        - name
        - fd_in
        - fd_out
      BBCount:         34
      ICount:          261
      EdgeCount:       42
      CyclomaticComplexity: 10
      functionsReached:
        - connection_set_default_handlers
        - connection_update_properties
        - event_create
        - event_set_forced_debug
        - i_panic
        - i_strdup
        - p_free_internal
      functionUses:    4
      BranchProfiles:
        - Branch String:   'connection.c:593,6'
          Branch Sides:
            - BranchSide:      'connection.c:594,7'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
            - BranchSide:      'connection.c:599,2'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
        - Branch String:   'connection.c:594,7'
          Branch Sides:
            - BranchSide:      'connection.c:595,4'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
            - BranchSide:      'connection.c:596,14'
              BranchSideFuncs:
                - p_free_internal.4693
                - i_strdup
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
        - Branch String:   'connection.c:613,45'
          Branch Sides:
            - BranchSide:      'connection.c:614,6'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
            - BranchSide:      'connection.c:619,6'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
        - Branch String:   'connection.c:613,6'
          Branch Sides:
            - BranchSide:      'connection.c:616,4'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
            - BranchSide:      'connection.c:619,6'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
                - event_create
        - Branch String:   'connection.c:619,6'
          Branch Sides:
            - BranchSide:      'connection.c:620,17'
              BranchSideFuncs:
                - event_create
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
            - BranchSide:      'connection.c:621,6'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
                - event_set_forced_debug
        - Branch String:   'connection.c:621,6'
          Branch Sides:
            - BranchSide:      'connection.c:622,26'
              BranchSideFuncs:
                - event_set_forced_debug
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
            - BranchSide:      'connection.c:624,6'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
        - Branch String:   'connection.c:624,6'
          Branch Sides:
            - BranchSide:      'connection.c:625,3'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
                - i_panic
            - BranchSide:      'connection.c:627,16'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
        - Branch String:   'connection.c:625,3'
          Branch Sides:
            - BranchSide:      'connection.c:625,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:626,2'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
        - Branch String:   'connection.c:628,3'
          Branch Sides:
            - BranchSide:      'connection.c:628,3'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
            - BranchSide:      'connection.c:629,3'
              BranchSideFuncs:
                - connection_update_properties
                - connection_set_default_handlers
      Callsites:
        - Src:             'connection.c:610,2'
          Dst:             p_free_internal
        - Src:             'connection.c:611,20'
          Dst:             i_strdup
        - Src:             'connection.c:620,17'
          Dst:             event_create
        - Src:             'connection.c:622,3'
          Dst:             event_set_forced_debug
        - Src:             'connection.c:625,3'
          Dst:             i_panic
        - Src:             'connection.c:632,2'
          Dst:             connection_update_properties
        - Src:             'connection.c:633,2'
          Dst:             connection_set_default_handlers
    - functionName:    connection_init_client_unix
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - conn
        - path
      BBCount:         10
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - connection_init
        - event_add_str
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'connection.c:740,2'
          Branch Sides:
            - BranchSide:      'connection.c:740,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:742,2'
              BranchSideFuncs:
                - connection_init
                - event_add_str
        - Branch String:   'connection.c:747,6'
          Branch Sides:
            - BranchSide:      'connection.c:747,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:748,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:740,2'
          Dst:             i_panic
        - Src:             'connection.c:744,2'
          Dst:             connection_init
        - Src:             'connection.c:745,2'
          Dst:             event_add_str
    - functionName:    connection_init
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - conn
        - name
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_init_full
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:639,2'
          Dst:             connection_init_full
    - functionName:    connection_init_client_ip
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - list
        - conn
        - hostname
        - ip
        - port
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - connection_init_client_ip_from
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'connection.c:734,2'
          Dst:             connection_init_client_ip_from
    - functionName:    connection_init_client_ip_from
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - conn
        - hostname
        - ip
        - port
        - my_ip
      BBCount:         19
      ICount:          137
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - connection_init
        - connection_update_event
        - event_add_str
        - i_panic
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:708,6'
          Branch Sides:
            - BranchSide:      'connection.c:709,35'
              BranchSideFuncs:
                - t_strdup_printf
                - connection_init
                - connection_update_event
                - event_add_str
                - i_panic
            - BranchSide:      'connection.c:711,2'
              BranchSideFuncs:
                - connection_init
                - connection_update_event
                - event_add_str
                - i_panic
        - Branch String:   'connection.c:711,2'
          Branch Sides:
            - BranchSide:      'connection.c:711,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:713,2'
              BranchSideFuncs:
                - connection_init
                - connection_update_event
                - event_add_str
        - Branch String:   'connection.c:716,6'
          Branch Sides:
            - BranchSide:      'connection.c:717,3'
              BranchSideFuncs:
                - connection_init
                - connection_update_event
                - event_add_str
            - BranchSide:      'connection.c:719,3'
              BranchSideFuncs:
                - connection_init
                - connection_update_event
                - event_add_str
        - Branch String:   'connection.c:722,6'
          Branch Sides:
            - BranchSide:      'connection.c:723,17'
              BranchSideFuncs:
                - event_add_str
                - connection_update_event
            - BranchSide:      'connection.c:724,26'
              BranchSideFuncs:
                - connection_update_event
        - Branch String:   'connection.c:726,6'
          Branch Sides:
            - BranchSide:      'connection.c:726,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:727,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:709,10'
          Dst:             t_strdup_printf
        - Src:             'connection.c:711,2'
          Dst:             i_panic
        - Src:             'connection.c:721,2'
          Dst:             connection_init
        - Src:             'connection.c:723,3'
          Dst:             event_add_str
        - Src:             'connection.c:724,2'
          Dst:             connection_update_event
    - functionName:    connection_init_client_fd
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 683
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - list
        - conn
        - name
        - fd_in
        - fd_out
      BBCount:         15
      ICount:          114
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - connection_client_connected
        - connection_init_full
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'connection.c:684,2'
          Branch Sides:
            - BranchSide:      'connection.c:684,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:686,23'
              BranchSideFuncs:
                - connection_init_full
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - connection_client_connected
                - e_debug
        - Branch String:   'connection.c:693,2'
          Branch Sides:
            - BranchSide:      'connection.c:693,2'
              BranchSideFuncs:
                - e_debug
                - connection_client_connected
            - BranchSide:      'connection.c:693,2'
              BranchSideFuncs:
                - event_send_abort
                - connection_client_connected
        - Branch String:   'connection.c:695,6'
          Branch Sides:
            - BranchSide:      'connection.c:695,6'
              BranchSideFuncs:
                - connection_client_connected
            - BranchSide:      'connection.c:696,3'
              BranchSideFuncs:
                - connection_client_connected
      Callsites:
        - Src:             'connection.c:684,2'
          Dst:             i_panic
        - Src:             'connection.c:686,2'
          Dst:             connection_init_full
        - Src:             'connection.c:688,32'
          Dst:             event_create_passthrough
        - Src:             'connection.c:693,2'
          Dst:             event_want_level
        - Src:             'connection.c:693,2'
          Dst:             e_debug
        - Src:             'connection.c:693,2'
          Dst:             event_send_abort
        - Src:             'connection.c:697,2'
          Dst:             connection_client_connected
    - functionName:    connection_init_server_ip
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - list
        - conn
        - name
        - fd_in
        - fd_out
        - remote_ip
        - remote_port
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - connection_init_server
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:672,24'
          Branch Sides:
            - BranchSide:      'connection.c:672,27'
              BranchSideFuncs:
                - connection_init_server
            - BranchSide:      'connection.c:674,6'
              BranchSideFuncs:
                - connection_init_server
        - Branch String:   'connection.c:672,6'
          Branch Sides:
            - BranchSide:      'connection.c:673,3'
              BranchSideFuncs:
                - connection_init_server
            - BranchSide:      'connection.c:674,6'
              BranchSideFuncs:
                - connection_init_server
        - Branch String:   'connection.c:674,6'
          Branch Sides:
            - BranchSide:      'connection.c:674,6'
              BranchSideFuncs:
                - connection_init_server
            - BranchSide:      'connection.c:675,23'
              BranchSideFuncs:
                - connection_init_server
      Callsites:
        - Src:             'connection.c:677,2'
          Dst:             connection_init_server
    - functionName:    connection_init_server
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - list
        - conn
        - name
        - fd_in
        - fd_out
      BBCount:         15
      ICount:          118
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - connection_init_full
        - connection_init_streams
        - e_debug
        - event_create_passthrough
        - event_send_abort
        - event_want_level
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'connection.c:646,2'
          Branch Sides:
            - BranchSide:      'connection.c:646,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'connection.c:648,23'
              BranchSideFuncs:
                - connection_init_full
                - event_create_passthrough
                - event_want_level
                - event_send_abort
                - connection_init_streams
                - e_debug
        - Branch String:   'connection.c:655,2'
          Branch Sides:
            - BranchSide:      'connection.c:655,2'
              BranchSideFuncs:
                - e_debug
                - connection_init_streams
            - BranchSide:      'connection.c:655,2'
              BranchSideFuncs:
                - event_send_abort
                - connection_init_streams
        - Branch String:   'connection.c:662,6'
          Branch Sides:
            - BranchSide:      'connection.c:662,6'
              BranchSideFuncs: []
            - BranchSide:      'connection.c:663,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'connection.c:646,2'
          Dst:             i_panic
        - Src:             'connection.c:648,2'
          Dst:             connection_init_full
        - Src:             'connection.c:650,32'
          Dst:             event_create_passthrough
        - Src:             'connection.c:655,2'
          Dst:             event_want_level
        - Src:             'connection.c:655,2'
          Dst:             e_debug
        - Src:             'connection.c:655,2'
          Dst:             event_send_abort
        - Src:             'connection.c:657,2'
          Dst:             connection_init_streams
    - functionName:    connection_streams_changed
      functionSourceFile: '/src/dovecot/src/lib/connection.c'
      linkageType:     externalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - conn
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - connection_input_halt
        - connection_input_resume
      functionUses:    0
      BranchProfiles:
        - Branch String:   'connection.c:556,31'
          Branch Sides:
            - BranchSide:      'connection.c:556,34'
              BranchSideFuncs:
                - connection_input_halt
                - connection_input_resume
            - BranchSide:      'connection.c:556,31'
              BranchSideFuncs: []
        - Branch String:   'connection.c:556,6'
          Branch Sides:
            - BranchSide:      'connection.c:556,6'
              BranchSideFuncs:
                - connection_input_halt
                - connection_input_resume
            - BranchSide:      'connection.c:557,25'
              BranchSideFuncs:
                - connection_input_halt
                - connection_input_resume
      Callsites:
        - Src:             'connection.c:557,3'
          Dst:             connection_input_halt
        - Src:             'connection.c:558,3'
          Dst:             connection_input_resume
    - functionName:    cpu_count_get
      functionSourceFile: '/src/dovecot/src/lib/cpu-count.c'
      linkageType:     externalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cpu_count_r
        - error_r
      BBCount:         8
      ICount:          48
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - __sched_cpucount
        - sched_getaffinity
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'cpu-count.c:20,6'
          Branch Sides:
            - BranchSide:      'cpu-count.c:21,14'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'cpu-count.c:24,11'
              BranchSideFuncs:
                - __sched_cpucount
      Callsites:
        - Src:             'cpu-count.c:20,6'
          Dst:             sched_getaffinity
        - Src:             'cpu-count.c:21,14'
          Dst:             t_strdup_printf
        - Src:             'cpu-count.c:24,11'
          Dst:             __sched_cpucount
    - functionName:    sched_getaffinity
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __sched_cpucount
      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:    crc32_str_more
      functionSourceFile: '/src/dovecot/src/lib/crc32.c'
      linkageType:     externalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - crc
        - str
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'crc32.c:87,2'
          Branch Sides:
            - BranchSide:      'crc32.c:88,10'
              BranchSideFuncs: []
            - BranchSide:      'crc32.c:89,6'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    crc32_str
      functionSourceFile: '/src/dovecot/src/lib/crc32.c'
      linkageType:     externalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - crc32_str_more
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crc32.c:79,9'
          Dst:             crc32_str_more
    - functionName:    crc32_data_more
      functionSourceFile: '/src/dovecot/src/lib/crc32.c'
      linkageType:     externalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - crc
        - data
        - size
      BBCount:         5
      ICount:          59
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:
        - Branch String:   'crc32.c:71,2'
          Branch Sides:
            - BranchSide:      'crc32.c:72,10'
              BranchSideFuncs: []
            - BranchSide:      'crc32.c:73,6'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    crc32_data
      functionSourceFile: '/src/dovecot/src/lib/crc32.c'
      linkageType:     externalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - crc32_data_more
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crc32.c:63,9'
          Dst:             crc32_data_more
    - functionName:    malloc_add_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:38,34'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:38,37'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:39,17'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:38,65'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:38,65'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:39,17'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:38,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:38,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:41,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:40,3'
          Dst:             i_panic
    - functionName:    data_stack_send_grow_event
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - last_alloc_size
      BBCount:         18
      ICount:          132
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - backtrace_get
        - data_stack_get_alloc_size
        - data_stack_get_used_size
        - e_debug
        - event_add_int
        - event_add_str
        - event_create
        - event_send_abort
        - event_set_name
        - event_want_level
        - str_c
        - str_printfa
        - t_str_new
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'data-stack.c:404,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:407,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:409,6'
              BranchSideFuncs:
                - event_set_name
                - data_stack_get_alloc_size
                - event_add_int
                - data_stack_get_used_size
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_str
                - event_want_level
                - backtrace_get
                - t_strdup_printf
                - event_add_str
                - t_str_new
                - data_stack_get_used_size
                - data_stack_get_alloc_size
                - str_printfa
                - event_want_level
                - event_send_abort
                - str_c
                - e_debug
                - event_add_str
                - event_create
        - Branch String:   'data-stack.c:409,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:410,21'
              BranchSideFuncs:
                - event_create
                - event_set_name
                - data_stack_get_alloc_size
                - event_add_int
                - data_stack_get_used_size
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_str
                - event_want_level
                - backtrace_get
                - t_strdup_printf
                - event_add_str
                - t_str_new
                - data_stack_get_used_size
                - data_stack_get_alloc_size
                - str_printfa
                - event_want_level
                - event_send_abort
                - str_c
                - e_debug
                - event_add_str
            - BranchSide:      'data-stack.c:411,17'
              BranchSideFuncs:
                - event_set_name
                - data_stack_get_alloc_size
                - event_add_int
                - data_stack_get_used_size
                - event_add_int
                - event_add_int
                - event_add_int
                - event_add_str
                - event_want_level
                - backtrace_get
                - t_strdup_printf
                - event_add_str
                - t_str_new
                - data_stack_get_used_size
                - data_stack_get_alloc_size
                - str_printfa
                - event_want_level
                - event_send_abort
                - str_c
                - e_debug
                - event_add_str
        - Branch String:   'data-stack.c:428,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:429,3'
              BranchSideFuncs:
                - backtrace_get
                - t_strdup_printf
                - event_add_str
                - t_str_new
                - data_stack_get_used_size
                - data_stack_get_alloc_size
                - str_printfa
                - event_want_level
                - event_send_abort
                - str_c
                - e_debug
                - event_add_str
            - BranchSide:      'data-stack.c:435,6'
              BranchSideFuncs:
                - backtrace_get
                - t_strdup_printf
                - event_add_str
                - t_str_new
                - data_stack_get_used_size
                - data_stack_get_alloc_size
                - str_printfa
                - event_want_level
                - event_send_abort
                - str_c
                - e_debug
                - event_add_str
        - Branch String:   'data-stack.c:435,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:436,17'
              BranchSideFuncs:
                - event_add_str
                - t_str_new
                - data_stack_get_used_size
                - data_stack_get_alloc_size
                - str_printfa
                - event_want_level
                - event_send_abort
                - str_c
                - e_debug
            - BranchSide:      'data-stack.c:438,55'
              BranchSideFuncs:
                - t_strdup_printf
                - event_add_str
                - t_str_new
                - data_stack_get_used_size
                - data_stack_get_alloc_size
                - str_printfa
                - event_want_level
                - event_send_abort
                - str_c
                - e_debug
        - Branch String:   'data-stack.c:451,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:451,2'
              BranchSideFuncs:
                - str_c
                - e_debug
            - BranchSide:      'data-stack.c:451,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'data-stack.c:410,21'
          Dst:             event_create
        - Src:             'data-stack.c:411,2'
          Dst:             event_set_name
        - Src:             'data-stack.c:412,47'
          Dst:             data_stack_get_alloc_size
        - Src:             'data-stack.c:412,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:413,46'
          Dst:             data_stack_get_used_size
        - Src:             'data-stack.c:413,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:414,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:415,2'
          Dst:             event_add_int
        - Src:             'data-stack.c:422,2'
          Dst:             event_add_str
        - Src:             'data-stack.c:428,7'
          Dst:             event_want_level
        - Src:             'data-stack.c:435,6'
          Dst:             backtrace_get
        - Src:             'data-stack.c:436,3'
          Dst:             event_add_str
        - Src:             'data-stack.c:438,15'
          Dst:             t_strdup_printf
        - Src:             'data-stack.c:439,3'
          Dst:             event_add_str
        - Src:             'data-stack.c:442,18'
          Dst:             t_str_new
        - Src:             'data-stack.c:444,7'
          Dst:             data_stack_get_used_size
        - Src:             'data-stack.c:445,7'
          Dst:             data_stack_get_alloc_size
        - Src:             'data-stack.c:443,2'
          Dst:             str_printfa
        - Src:             'data-stack.c:451,2'
          Dst:             event_want_level
        - Src:             'data-stack.c:451,2'
          Dst:             str_c
        - Src:             'data-stack.c:451,2'
          Dst:             e_debug
        - Src:             'data-stack.c:451,2'
          Dst:             event_send_abort
    - functionName:    data_stack_get_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'data-stack.c:719,9'
          Branch Sides:
            - BranchSide:      'data-stack.c:718,22'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:721,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:721,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:721,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:723,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:723,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:724,11'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:725,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:721,2'
          Dst:             i_panic
    - functionName:    data_stack_get_used_size
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'data-stack.c:731,9'
          Branch Sides:
            - BranchSide:      'data-stack.c:730,22'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:733,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:733,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:733,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:735,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:735,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:736,11'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:737,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:733,2'
          Dst:             i_panic
    - functionName:    mem_block_reset
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - block
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    data_stack_deinit
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          33
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - data_stack_free_unused
        - i_panic
        - t_pop
      functionUses:    1
      BranchProfiles:
        - Branch String:   'data-stack.c:777,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:777,7'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - free
                - data_stack_free_unused
            - BranchSide:      'data-stack.c:777,7'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - free
                - data_stack_free_unused
        - Branch String:   'data-stack.c:777,29'
          Branch Sides:
            - BranchSide:      'data-stack.c:778,6'
              BranchSideFuncs:
                - free
                - data_stack_free_unused
                - i_panic
            - BranchSide:      'data-stack.c:779,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:777,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:779,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:781,7'
              BranchSideFuncs:
                - free
                - data_stack_free_unused
      Callsites:
        - Src:             'data-stack.c:777,7'
          Dst:             t_pop
        - Src:             'data-stack.c:779,3'
          Dst:             i_panic
        - Src:             'data-stack.c:783,2'
          Dst:             data_stack_free_unused
    - functionName:    t_pop
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - id
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - t_pop_last_unsafe
      functionUses:    58
      BranchProfiles:
        - Branch String:   'data-stack.c:328,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:329,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:330,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:326,2'
          Dst:             t_pop_last_unsafe
    - functionName:    data_stack_free_unused
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'data-stack.c:742,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:742,7'
              BranchSideFuncs:
                - free
            - BranchSide:      'data-stack.c:742,7'
              BranchSideFuncs:
                - free
      Callsites:       []
    - functionName:    t_pop_last_unsafe
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - data_stack_last_buffer_reset
        - free_blocks
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'data-stack.c:283,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:281,9'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - free_blocks
                - i_panic
            - BranchSide:      'data-stack.c:283,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - free_blocks
                - i_panic
        - Branch String:   'data-stack.c:283,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:284,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:286,2'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - free_blocks
        - Branch String:   'data-stack.c:293,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:294,19'
              BranchSideFuncs:
                - free_blocks
            - BranchSide:      'data-stack.c:301,2'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:295,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:297,16'
              BranchSideFuncs:
                - free_blocks
            - BranchSide:      'data-stack.c:300,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:284,3'
          Dst:             i_panic
        - Src:             'data-stack.c:286,2'
          Dst:             data_stack_last_buffer_reset
        - Src:             'data-stack.c:297,4'
          Dst:             free_blocks
    - functionName:    data_stack_last_buffer_reset
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - preserve_data
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'data-stack.c:112,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:112,6'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:129,21'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    free_blocks
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - block
      BBCount:         17
      ICount:          71
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'data-stack.c:220,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:221,3'
              BranchSideFuncs:
                - free
                - free
            - BranchSide:      'data-stack.c:240,1'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:228,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:230,12'
              BranchSideFuncs:
                - free
                - free
            - BranchSide:      'data-stack.c:238,11'
              BranchSideFuncs:
                - free
                - free
        - Branch String:   'data-stack.c:230,33'
          Branch Sides:
            - BranchSide:      'data-stack.c:231,5'
              BranchSideFuncs:
                - free
                - free
            - BranchSide:      'data-stack.c:232,9'
              BranchSideFuncs:
                - free
                - free
        - Branch String:   'data-stack.c:230,12'
          Branch Sides:
            - BranchSide:      'data-stack.c:232,9'
              BranchSideFuncs:
                - free
                - free
            - BranchSide:      'data-stack.c:235,9'
              BranchSideFuncs:
                - free
                - free
      Callsites:       []
    - functionName:    data_stack_deinit_event
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 770
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'data-stack.c:771,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:771,2'
              BranchSideFuncs:
                - event_unref
            - BranchSide:      'data-stack.c:771,2'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'data-stack.c:771,2'
          Dst:             event_unref
    - functionName:    mem_block_alloc
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - min_size
      BBCount:         16
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - i_panic
        - malloc_add_check
        - mem_block_reset
        - nearest_power
      functionUses:    2
      BranchProfiles:
        - Branch String:   'data-stack.c:371,14'
          Branch Sides:
            - BranchSide:      'data-stack.c:371,12'
              BranchSideFuncs:
                - malloc_add_check.4880
                - nearest_power
                - malloc
                - mem_block_reset
                - i_panic
                - abort
            - BranchSide:      'data-stack.c:371,42'
              BranchSideFuncs:
                - malloc_add_check.4880
                - nearest_power
                - malloc
                - mem_block_reset
                - i_panic
                - abort
        - Branch String:   'data-stack.c:373,15'
          Branch Sides:
            - BranchSide:      'data-stack.c:373,32'
              BranchSideFuncs:
                - malloc
                - mem_block_reset
                - i_panic
                - abort
            - BranchSide:      'data-stack.c:374,17'
              BranchSideFuncs:
                - malloc_add_check.4880
                - nearest_power
                - malloc
                - mem_block_reset
                - i_panic
                - abort
        - Branch String:   'data-stack.c:379,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:380,7'
              BranchSideFuncs:
                - i_panic
                - abort
            - BranchSide:      'data-stack.c:389,16'
              BranchSideFuncs:
                - mem_block_reset
        - Branch String:   'data-stack.c:380,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:381,8'
              BranchSideFuncs:
                - abort
            - BranchSide:      'data-stack.c:385,12'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:381,8'
          Branch Sides:
            - BranchSide:      'data-stack.c:382,5'
              BranchSideFuncs:
                - abort
            - BranchSide:      'data-stack.c:383,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:374,17'
          Dst:             malloc_add_check
        - Src:             'data-stack.c:374,3'
          Dst:             nearest_power
        - Src:             'data-stack.c:382,5'
          Dst:             abort
        - Src:             'data-stack.c:386,3'
          Dst:             i_panic
        - Src:             'data-stack.c:391,2'
          Dst:             mem_block_reset
    - 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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    t_buffer_alloc_last_full
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - t_malloc_real
      functionUses:    0
      BranchProfiles:
        - Branch String:   'data-stack.c:670,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:670,6'
              BranchSideFuncs:
                - t_malloc_real
            - BranchSide:      'data-stack.c:670,6'
              BranchSideFuncs:
                - t_malloc_real
        - Branch String:   'data-stack.c:670,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:670,6'
              BranchSideFuncs:
                - t_malloc_real
            - BranchSide:      'data-stack.c:671,23'
              BranchSideFuncs:
                - t_malloc_real
      Callsites:
        - Src:             'data-stack.c:671,9'
          Dst:             t_malloc_real
    - functionName:    t_malloc_real
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - size
        - permanent
      BBCount:         37
      ICount:          213
      EdgeCount:       45
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - data_stack_after_last_alloc
        - data_stack_init
        - data_stack_last_buffer_reset
        - data_stack_send_grow_event
        - i_panic
        - mem_block_alloc
        - mem_block_reset
        - t_pop
        - t_push
      functionUses:    5
      BranchProfiles:
        - Branch String:   'data-stack.c:464,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:464,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_alloc
                - mem_block_reset
                - data_stack_init
                - i_panic
            - BranchSide:      'data-stack.c:464,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_alloc
                - mem_block_reset
                - data_stack_init
                - i_panic
        - Branch String:   'data-stack.c:464,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:465,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:467,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_alloc
                - mem_block_reset
                - data_stack_init
        - Branch String:   'data-stack.c:467,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:469,3'
              BranchSideFuncs:
                - data_stack_init
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_alloc
                - mem_block_reset
            - BranchSide:      'data-stack.c:471,2'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_alloc
                - mem_block_reset
        - Branch String:   'data-stack.c:484,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:486,36'
              BranchSideFuncs:
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_alloc
                - mem_block_reset
            - BranchSide:      'data-stack.c:489,6'
              BranchSideFuncs:
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_alloc
                - mem_block_reset
        - Branch String:   'data-stack.c:489,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:493,7'
              BranchSideFuncs:
                - mem_block_alloc
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_reset
            - BranchSide:      'data-stack.c:512,36'
              BranchSideFuncs:
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
        - Branch String:   'data-stack.c:493,28'
          Branch Sides:
            - BranchSide:      'data-stack.c:493,31'
              BranchSideFuncs:
                - mem_block_alloc
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
                - mem_block_reset
            - BranchSide:      'data-stack.c:499,28'
              BranchSideFuncs:
                - mem_block_alloc
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
        - Branch String:   'data-stack.c:493,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:494,12'
              BranchSideFuncs:
                - mem_block_reset
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
            - BranchSide:      'data-stack.c:499,28'
              BranchSideFuncs:
                - mem_block_alloc
                - data_stack_after_last_alloc
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
        - Branch String:   'data-stack.c:518,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:519,26'
              BranchSideFuncs:
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
            - BranchSide:      'data-stack.c:521,6'
              BranchSideFuncs:
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
        - Branch String:   'data-stack.c:521,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:521,12'
              BranchSideFuncs:
                - t_push
                - __errno_location
                - data_stack_send_grow_event
                - __errno_location
                - t_pop
                - i_panic
            - BranchSide:      'data-stack.c:521,6'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:533,4'
          Branch Sides:
            - BranchSide:      'data-stack.c:533,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:533,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:465,3'
          Dst:             i_panic
        - Src:             'data-stack.c:469,3'
          Dst:             data_stack_init
        - Src:             'data-stack.c:482,2'
          Dst:             data_stack_last_buffer_reset
        - Src:             'data-stack.c:496,4'
          Dst:             mem_block_reset
        - Src:             'data-stack.c:499,12'
          Dst:             mem_block_alloc
        - Src:             'data-stack.c:512,8'
          Dst:             data_stack_after_last_alloc
        - Src:             'data-stack.c:521,12'
          Dst:             t_push
        - Src:             'data-stack.c:526,19'
          Dst:             __errno_location
        - Src:             'data-stack.c:530,3'
          Dst:             data_stack_send_grow_event
        - Src:             'data-stack.c:532,3'
          Dst:             __errno_location
        - Src:             'data-stack.c:533,4'
          Dst:             t_pop
        - Src:             'data-stack.c:533,4'
          Dst:             i_panic
    - functionName:    data_stack_init
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mem_block_alloc
        - t_push
      functionUses:    3
      BranchProfiles:
        - Branch String:   'data-stack.c:748,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:748,6'
              BranchSideFuncs:
                - mem_block_alloc
                - t_push
            - BranchSide:      'data-stack.c:748,6'
              BranchSideFuncs:
                - mem_block_alloc
                - t_push
        - Branch String:   'data-stack.c:748,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:751,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:753,25'
              BranchSideFuncs:
                - mem_block_alloc
                - t_push
      Callsites:
        - Src:             'data-stack.c:760,18'
          Dst:             mem_block_alloc
        - Src:             'data-stack.c:766,18'
          Dst:             t_push
    - functionName:    data_stack_after_last_alloc
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - block
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    t_push
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - marker
      BBCount:         10
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - data_stack_init
        - i_panic
        - t_buffer_alloc
        - t_buffer_get
        - t_push
      functionUses:    68
      BranchProfiles:
        - Branch String:   'data-stack.c:153,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:153,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:155,6'
              BranchSideFuncs:
                - t_buffer_get
                - t_buffer_alloc
                - data_stack_init
                - t_push
        - Branch String:   'data-stack.c:155,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:157,3'
              BranchSideFuncs:
                - data_stack_init
                - t_push
            - BranchSide:      'data-stack.c:162,10'
              BranchSideFuncs:
                - t_buffer_get
                - t_buffer_alloc
      Callsites:
        - Src:             'data-stack.c:153,2'
          Dst:             i_panic
        - Src:             'data-stack.c:157,3'
          Dst:             data_stack_init
        - Src:             'data-stack.c:158,10'
          Dst:             t_push
        - Src:             'data-stack.c:162,10'
          Dst:             t_buffer_get
        - Src:             'data-stack.c:176,2'
          Dst:             t_buffer_alloc
    - functionName:    t_buffer_get
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_malloc_real
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'data-stack.c:635,8'
          Dst:             t_malloc_real
    - functionName:    t_buffer_alloc
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - size
      BBCount:         15
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - t_malloc_real
      functionUses:    12
      BranchProfiles:
        - Branch String:   'data-stack.c:660,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:660,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:661,2'
              BranchSideFuncs:
                - t_malloc_real
                - i_panic
                - i_panic
        - Branch String:   'data-stack.c:661,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:661,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:662,2'
              BranchSideFuncs:
                - t_malloc_real
                - i_panic
        - Branch String:   'data-stack.c:662,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:662,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:662,2'
              BranchSideFuncs:
                - t_malloc_real
      Callsites:
        - Src:             'data-stack.c:660,2'
          Dst:             i_panic
        - Src:             'data-stack.c:661,2'
          Dst:             i_panic
        - Src:             'data-stack.c:662,2'
          Dst:             i_panic
        - Src:             'data-stack.c:665,8'
          Dst:             t_malloc_real
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    t_buffer_reget
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buffer
        - size
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_memcpy
        - t_buffer_get
      functionUses:    5
      BranchProfiles:
        - Branch String:   'data-stack.c:648,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:649,10'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:651,28'
              BranchSideFuncs:
                - t_buffer_get
                - i_memcpy.4913
        - Branch String:   'data-stack.c:652,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:653,3'
              BranchSideFuncs:
                - i_memcpy.4913
            - BranchSide:      'data-stack.c:655,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:651,15'
          Dst:             t_buffer_get
        - Src:             'data-stack.c:653,3'
          Dst:             i_memcpy
    - functionName:    t_get_bytes_available
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          50
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'data-stack.c:618,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:618,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:618,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:627,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:627,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:627,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:627,2'
          Dst:             i_panic
    - functionName:    t_try_realloc
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - mem
        - size
      BBCount:         16
      ICount:          118
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - data_stack_after_last_alloc
        - data_stack_last_buffer_reset
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'data-stack.c:568,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:568,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - i_panic
            - BranchSide:      'data-stack.c:568,6'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
                - i_panic
        - Branch String:   'data-stack.c:568,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:569,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:570,2'
              BranchSideFuncs:
                - data_stack_last_buffer_reset
                - data_stack_after_last_alloc
        - Branch String:   'data-stack.c:580,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:584,20'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:613,2'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:595,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:597,27'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:611,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:569,3'
          Dst:             i_panic
        - Src:             'data-stack.c:571,2'
          Dst:             data_stack_last_buffer_reset
        - Src:             'data-stack.c:576,21'
          Dst:             data_stack_after_last_alloc
    - functionName:    t_malloc0
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - size
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_malloc_real
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'data-stack.c:557,8'
          Dst:             t_malloc_real
    - functionName:    t_malloc_no0
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - size
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_malloc_real
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'data-stack.c:550,9'
          Dst:             t_malloc_real
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    data_stack_frame_contains
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - id
        - _ptr
      BBCount:         28
      ICount:          187
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'data-stack.c:682,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:683,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:686,21'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'data-stack.c:692,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:692,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:693,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'data-stack.c:694,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:694,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'data-stack.c:698,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:701,42'
          Branch Sides:
            - BranchSide:      'data-stack.c:702,6'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:707,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:701,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:703,3'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:707,15'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:707,2'
          Branch Sides:
            - BranchSide:      'data-stack.c:708,16'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:713,2'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:710,25'
          Branch Sides:
            - BranchSide:      'data-stack.c:710,28'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:712,2'
              BranchSideFuncs: []
        - Branch String:   'data-stack.c:710,7'
          Branch Sides:
            - BranchSide:      'data-stack.c:711,4'
              BranchSideFuncs: []
            - BranchSide:      'data-stack.c:712,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'data-stack.c:692,2'
          Dst:             i_panic
        - Src:             'data-stack.c:694,2'
          Dst:             i_panic
    - functionName:    t_pop_pass_str
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - id
        - str
      BBCount:         11
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - data_stack_frame_contains
        - i_strdup
        - p_free_internal
        - t_pop
        - t_strdup
      functionUses:    12
      BranchProfiles:
        - Branch String:   'data-stack.c:343,18'
          Branch Sides:
            - BranchSide:      'data-stack.c:343,48'
              BranchSideFuncs:
                - t_pop
            - BranchSide:      'data-stack.c:344,16'
              BranchSideFuncs:
                - t_pop
        - Branch String:   'data-stack.c:343,6'
          Branch Sides:
            - BranchSide:      'data-stack.c:344,16'
              BranchSideFuncs:
                - i_strdup
                - t_pop
                - t_strdup
                - p_free_internal.4922
            - BranchSide:      'data-stack.c:349,28'
              BranchSideFuncs:
                - i_strdup
                - t_pop
                - t_strdup
                - p_free_internal.4922
      Callsites:
        - Src:             'data-stack.c:343,22'
          Dst:             data_stack_frame_contains
        - Src:             'data-stack.c:344,10'
          Dst:             t_pop
        - Src:             'data-stack.c:349,18'
          Dst:             i_strdup
        - Src:             'data-stack.c:350,13'
          Dst:             t_pop
        - Src:             'data-stack.c:351,9'
          Dst:             t_strdup
        - Src:             'data-stack.c:352,2'
          Dst:             p_free_internal
    - functionName:    t_push_named
      functionSourceFile: '/src/dovecot/src/lib/data-stack.c'
      linkageType:     externalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_push
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'data-stack.c:189,27'
          Dst:             t_push
    - functionName:    event_filter_query_update_category
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1222
      functionLinenumberEnd: 1254
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - query
        - node
        - category
        - add
      BBCount:         29
      ICount:          157
      EdgeCount:       34
      CyclomaticComplexity: 7
      functionsReached:
        - event_filter_query_update_category
        - strcmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:1223,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1224,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1226,10'
              BranchSideFuncs:
                - strcmp
                - event_filter_query_update_category
                - event_filter_query_update_category
        - Branch String:   'event-filter.c:1226,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1226,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1228,38'
              BranchSideFuncs:
                - event_filter_query_update_category
                - event_filter_query_update_category
            - BranchSide:      'event-filter.c:1237,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1237,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1237,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1237,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1237,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1237,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1239,7'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:1239,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1240,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1242,7'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:1242,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1243,8'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:1249,8'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1243,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:1244,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1246,15'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:1246,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:1247,26'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1248,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:1228,3'
          Dst:             event_filter_query_update_category
        - Src:             'event-filter.c:1229,3'
          Dst:             event_filter_query_update_category
        - Src:             'event-filter.c:1246,8'
          Dst:             strcmp
    - functionName:    event_match_strlist_recursive
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 721
      functionLinenumberEnd: 739
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - wanted_key
        - wanted_value
        - cmp_flags
        - seen
      BBCount:         22
      ICount:          150
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - cmp_str
        - event_find_field_nonrecursive
        - event_match_strlist_recursive
        - i_memcpy
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:725,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:726,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:728,40'
              BranchSideFuncs:
                - event_find_field_nonrecursive
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.5076
                - i_panic
        - Branch String:   'event-filter.c:729,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:730,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.5076
                - i_panic
            - BranchSide:      'event-filter.c:737,39'
              BranchSideFuncs:
                - event_match_strlist_recursive
        - Branch String:   'event-filter.c:730,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:730,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:731,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.5076
        - Branch String:   'event-filter.c:731,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:731,3'
              BranchSideFuncs:
                - i_memcpy.5076
                - event_match_strlist_recursive
                - cmp_str
            - BranchSide:      'event-filter.c:731,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.5076
        - Branch String:   'event-filter.c:731,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:732,5'
              BranchSideFuncs:
                - cmp_str
                - event_match_strlist_recursive
                - i_memcpy.5076
            - BranchSide:      'event-filter.c:736,2'
              BranchSideFuncs:
                - event_match_strlist_recursive
        - Branch String:   'event-filter.c:733,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:734,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:735,3'
              BranchSideFuncs:
                - event_match_strlist_recursive
                - cmp_str
                - i_memcpy.5076
      Callsites:
        - Src:             'event-filter.c:728,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'event-filter.c:730,3'
          Dst:             i_panic
        - Src:             'event-filter.c:731,3'
          Dst:             i_memcpy
        - Src:             'event-filter.c:733,8'
          Dst:             cmp_str
        - Src:             'event-filter.c:737,9'
          Dst:             event_match_strlist_recursive
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    cmp_str
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 696
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - value
        - wanted_value
        - flags
      BBCount:         10
      ICount:          73
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
        - strcmp
        - wildcard_match_escaped
        - wildcard_match_escaped_icase
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:697,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:698,8'
              BranchSideFuncs:
                - wildcard_match_escaped_icase
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:703,8'
              BranchSideFuncs:
                - strcasecmp
                - strcmp
        - Branch String:   'event-filter.c:698,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:699,34'
              BranchSideFuncs:
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:701,40'
              BranchSideFuncs:
                - wildcard_match_escaped_icase
        - Branch String:   'event-filter.c:703,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:704,18'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:706,22'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'event-filter.c:699,11'
          Dst:             wildcard_match_escaped
        - Src:             'event-filter.c:701,11'
          Dst:             wildcard_match_escaped_icase
        - Src:             'event-filter.c:704,11'
          Dst:             strcmp
        - Src:             'event-filter.c:706,11'
          Dst:             strcasecmp
    - functionName:    event_match_strlist
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 761
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - wanted_field
        - cmp_flags
      BBCount:         13
      ICount:          81
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - event_get_global
        - event_match_strlist_recursive
        - wanted_field_value_str
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:748,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:750,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:751,36'
              BranchSideFuncs:
                - event_get_global
                - event_match_strlist_recursive
        - Branch String:   'event-filter.c:751,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:754,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:755,6'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:755,30'
          Branch Sides:
            - BranchSide:      'event-filter.c:755,34'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:759,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:755,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:757,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:759,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:745,29'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:748,6'
          Dst:             event_match_strlist_recursive
        - Src:             'event-filter.c:751,36'
          Dst:             event_get_global
        - Src:             'event-filter.c:751,6'
          Dst:             event_match_strlist_recursive
    - functionName:    wanted_field_value_str
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - wanted_field
      BBCount:         14
      ICount:          95
      EdgeCount:       27
      CyclomaticComplexity: 15
      functionsReached:
        - i_unreached
        - net_ip2addr
        - t_strdup_printf
      functionUses:    10
      BranchProfiles:
        - Branch String:   'event-filter.c:105,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:107,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:109,33'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'event-filter.c:111,34'
              BranchSideFuncs:
                - net_ip2addr
                - t_strdup_printf
            - BranchSide:      'event-filter.c:119,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:119,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:121,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:112,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:114,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:115,35'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'event-filter.c:109,10'
          Dst:             t_strdup_printf
        - Src:             'event-filter.c:111,21'
          Dst:             net_ip2addr
        - Src:             'event-filter.c:115,10'
          Dst:             t_strdup_printf
        - Src:             'event-filter.c:121,2'
          Dst:             i_unreached
    - functionName:    event_filter_handle_numeric_operation
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 766
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - op
        - a
        - b
      BBCount:         14
      ICount:          90
      EdgeCount:       25
      CyclomaticComplexity: 13
      functionsReached:
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:767,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:769,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:771,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:773,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:775,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:777,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:781,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:781,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:781,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:783,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'event-filter.c:781,3'
          Dst:             i_unreached
        - Src:             'event-filter.c:783,2'
          Dst:             i_unreached
    - functionName:    cmp_value
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 713
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - value
        - wanted_field
        - flags
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmp_str
        - wanted_field_value_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:714,24'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:714,9'
          Dst:             cmp_str
    - functionName:    event_category_match
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - category
        - wanted_category
      BBCount:         8
      ICount:          43
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:642,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:643,7'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:646,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:643,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:644,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:645,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_has_category_nonrecursive
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - wanted_category
      BBCount:         16
      ICount:          98
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - array_is_created_i
        - event_category_match
        - i_memcpy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:655,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:656,3'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.5076
            - BranchSide:      'event-filter.c:661,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:656,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:656,3'
              BranchSideFuncs:
                - i_memcpy.5076
                - event_category_match
            - BranchSide:      'event-filter.c:656,3'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.5076
        - Branch String:   'event-filter.c:656,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:657,29'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.5076
            - BranchSide:      'event-filter.c:660,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:657,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:658,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:659,3'
              BranchSideFuncs:
                - event_category_match
                - i_memcpy.5076
      Callsites:
        - Src:             'event-filter.c:655,6'
          Dst:             array_is_created_i
        - Src:             'event-filter.c:656,3'
          Dst:             i_memcpy
        - Src:             'event-filter.c:657,8'
          Dst:             event_category_match
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_match_field
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 1001
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - filter
        - event
        - node
        - use_strcmp
        - source_filename
        - source_linenum
      BBCount:         128
      ICount:          855
      EdgeCount:       161
      CyclomaticComplexity: 35
      functionsReached:
        - cmp_value
        - event_filter_export_query_expr_op
        - event_filter_handle_numeric_operation
        - event_find_field_recursive
        - event_get_last_duration
        - event_match_strlist
        - i_panic
        - i_snprintf
        - i_unreached
        - i_warning
        - net_ip2addr
        - net_is_in_network
        - strcmp
        - t_pop
        - t_push
        - wanted_field_value_str
        - wildcard_match_escaped_icase
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:796,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:798,3'
              BranchSideFuncs:
                - event_get_last_duration
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
                - i_warning
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
            - BranchSide:      'event-filter.c:806,38'
              BranchSideFuncs:
                - event_find_field_recursive
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
                - i_warning
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:808,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:810,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:813,17'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
                - i_warning
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:810,65'
          Branch Sides:
            - BranchSide:      'event-filter.c:810,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:811,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:814,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:815,13'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
                - i_warning
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
            - BranchSide:      'event-filter.c:816,6'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
                - i_warning
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:816,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:817,13'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
                - i_warning
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
            - BranchSide:      'event-filter.c:819,10'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
                - i_warning
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - i_unreached
        - Branch String:   'event-filter.c:819,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:822,7'
              BranchSideFuncs:
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:854,7'
              BranchSideFuncs:
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:920,8'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:932,7'
              BranchSideFuncs:
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:980,7'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:1000,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:822,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:824,9'
              BranchSideFuncs:
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:838,7'
              BranchSideFuncs:
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
        - Branch String:   'event-filter.c:824,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:825,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:836,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:832,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:832,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:833,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:838,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:840,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:843,3'
              BranchSideFuncs:
                - t_push
                - cmp_value
                - t_pop
                - i_panic
                - strcmp
                - wanted_field_value_str
        - Branch String:   'event-filter.c:840,66'
          Branch Sides:
            - BranchSide:      'event-filter.c:840,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:841,5'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:844,32'
          Branch Sides:
            - BranchSide:      'event-filter.c:845,15'
              BranchSideFuncs:
                - strcmp
                - cmp_value
                - t_pop
                - i_panic
                - wanted_field_value_str
            - BranchSide:      'event-filter.c:849,21'
              BranchSideFuncs:
                - cmp_value
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:844,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:846,11'
              BranchSideFuncs:
                - wanted_field_value_str
                - t_pop
                - i_panic
            - BranchSide:      'event-filter.c:849,21'
              BranchSideFuncs:
                - cmp_value
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:851,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:851,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:851,5'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:854,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:855,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:871,14'
              BranchSideFuncs:
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
                - event_filter_handle_numeric_operation
        - Branch String:   'event-filter.c:855,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:856,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:870,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:866,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:866,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:867,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:871,14'
          Branch Sides:
            - BranchSide:      'event-filter.c:874,5'
              BranchSideFuncs:
                - event_filter_handle_numeric_operation
            - BranchSide:      'event-filter.c:875,15'
              BranchSideFuncs:
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
                - wanted_field_value_str
                - i_warning
        - Branch String:   'event-filter.c:875,51'
          Branch Sides:
            - BranchSide:      'event-filter.c:876,8'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:877,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
        - Branch String:   'event-filter.c:875,14'
          Branch Sides:
            - BranchSide:      'event-filter.c:877,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:890,14'
              BranchSideFuncs:
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
        - Branch String:   'event-filter.c:877,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:878,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:889,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:885,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:885,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:886,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:890,14'
          Branch Sides:
            - BranchSide:      'event-filter.c:893,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:911,15'
              BranchSideFuncs:
                - i_snprintf
                - t_push
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:893,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:894,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:908,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:904,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:904,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:905,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:915,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:915,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:915,6'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:920,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:921,27'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:929,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:925,30'
          Branch Sides:
            - BranchSide:      'event-filter.c:925,45'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:926,11'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:932,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:934,9'
              BranchSideFuncs:
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:948,7'
              BranchSideFuncs:
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
                - net_is_in_network
        - Branch String:   'event-filter.c:934,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:935,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:946,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:942,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:942,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:943,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:948,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:949,30'
              BranchSideFuncs:
                - net_is_in_network
            - BranchSide:      'event-filter.c:953,8'
              BranchSideFuncs:
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
                - wanted_field_value_str
                - i_warning
        - Branch String:   'event-filter.c:953,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:958,9'
              BranchSideFuncs:
                - wanted_field_value_str
                - i_warning
            - BranchSide:      'event-filter.c:972,3'
              BranchSideFuncs:
                - t_push
                - net_ip2addr
                - wanted_field_value_str
                - wildcard_match_escaped_icase
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:958,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:959,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:970,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:966,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:966,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:967,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:975,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:975,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:975,5'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:980,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:981,9'
              BranchSideFuncs:
                - event_filter_export_query_expr_op
                - i_warning
            - BranchSide:      'event-filter.c:995,3'
              BranchSideFuncs:
                - t_push
                - event_match_strlist
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:981,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:982,24'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:993,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:989,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:989,23'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'event-filter.c:990,8'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'event-filter.c:997,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:997,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:997,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:796,6'
          Dst:             strcmp
        - Src:             'event-filter.c:801,3'
          Dst:             event_get_last_duration
        - Src:             'event-filter.c:806,11'
          Dst:             event_find_field_recursive
        - Src:             'event-filter.c:831,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:827,5'
          Dst:             i_warning
        - Src:             'event-filter.c:843,3'
          Dst:             t_push
        - Src:             'event-filter.c:845,8'
          Dst:             strcmp
        - Src:             'event-filter.c:847,6'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:849,11'
          Dst:             cmp_value
        - Src:             'event-filter.c:851,5'
          Dst:             t_pop
        - Src:             'event-filter.c:851,5'
          Dst:             i_panic
        - Src:             'event-filter.c:865,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:858,5'
          Dst:             i_warning
        - Src:             'event-filter.c:873,11'
          Dst:             event_filter_handle_numeric_operation
        - Src:             'event-filter.c:884,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:880,5'
          Dst:             i_warning
        - Src:             'event-filter.c:902,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:903,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:896,5'
          Dst:             i_warning
        - Src:             'event-filter.c:911,4'
          Dst:             i_snprintf
        - Src:             'event-filter.c:912,4'
          Dst:             t_push
        - Src:             'event-filter.c:914,6'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:913,11'
          Dst:             wildcard_match_escaped_icase
        - Src:             'event-filter.c:915,6'
          Dst:             t_pop
        - Src:             'event-filter.c:915,6'
          Dst:             i_panic
        - Src:             'event-filter.c:922,8'
          Dst:             i_warning
        - Src:             'event-filter.c:941,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:937,5'
          Dst:             i_warning
        - Src:             'event-filter.c:949,11'
          Dst:             net_is_in_network
        - Src:             'event-filter.c:965,8'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:961,5'
          Dst:             i_warning
        - Src:             'event-filter.c:972,3'
          Dst:             t_push
        - Src:             'event-filter.c:973,39'
          Dst:             net_ip2addr
        - Src:             'event-filter.c:974,11'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:973,10'
          Dst:             wildcard_match_escaped_icase
        - Src:             'event-filter.c:975,5'
          Dst:             t_pop
        - Src:             'event-filter.c:975,5'
          Dst:             i_panic
        - Src:             'event-filter.c:988,8'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:983,5'
          Dst:             i_warning
        - Src:             'event-filter.c:995,3'
          Dst:             t_push
        - Src:             'event-filter.c:996,10'
          Dst:             event_match_strlist
        - Src:             'event-filter.c:997,5'
          Dst:             t_pop
        - Src:             'event-filter.c:997,5'
          Dst:             i_panic
        - Src:             'event-filter.c:1000,2'
          Dst:             i_unreached
    - functionName:    event_filter_export_query_expr_op
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - op
      BBCount:         14
      ICount:          64
      EdgeCount:       25
      CyclomaticComplexity: 13
      functionsReached:
        - i_unreached
      functionUses:    8
      BranchProfiles:
        - Branch String:   'event-filter.c:511,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:515,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:515,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:515,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:517,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:519,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:521,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:523,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:525,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:528,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'event-filter.c:515,3'
          Dst:             i_unreached
        - Src:             'event-filter.c:528,2'
          Dst:             i_unreached
    - functionName:    event_has_category
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 692
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - node
        - log_type
      BBCount:         18
      ICount:          103
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - event_get_global
        - event_get_parent
        - event_has_category_nonrecursive
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:671,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:672,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:675,6'
              BranchSideFuncs:
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
                - event_has_category_nonrecursive
                - event_get_parent
        - Branch String:   'event-filter.c:675,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:676,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:678,2'
              BranchSideFuncs:
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
                - event_has_category_nonrecursive
                - event_get_parent
        - Branch String:   'event-filter.c:678,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:679,39'
              BranchSideFuncs:
                - event_has_category_nonrecursive
                - event_get_parent
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
            - BranchSide:      'event-filter.c:685,10'
              BranchSideFuncs:
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
        - Branch String:   'event-filter.c:679,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:680,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:682,28'
              BranchSideFuncs:
                - event_get_parent
                - event_get_global
                - event_has_category_nonrecursive
                - event_get_parent
                - event_has_category_nonrecursive
        - Branch String:   'event-filter.c:686,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:687,39'
              BranchSideFuncs:
                - event_has_category_nonrecursive
                - event_get_parent
            - BranchSide:      'event-filter.c:691,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:687,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:688,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:689,28'
              BranchSideFuncs:
                - event_get_parent
                - event_has_category_nonrecursive
      Callsites:
        - Src:             'event-filter.c:679,7'
          Dst:             event_has_category_nonrecursive
        - Src:             'event-filter.c:682,11'
          Dst:             event_get_parent
        - Src:             'event-filter.c:685,10'
          Dst:             event_get_global
        - Src:             'event-filter.c:687,7'
          Dst:             event_has_category_nonrecursive
        - Src:             'event-filter.c:689,11'
          Dst:             event_get_parent
    - functionName:    event_filter_append_escaped
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - dest
        - src
        - wildcard
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_append
        - str_append_escaped
        - strlen
      functionUses:    5
      BranchProfiles:
        - Branch String:   'event-filter.c:500,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:501,22'
              BranchSideFuncs:
                - str_append.5103
            - BranchSide:      'event-filter.c:504,14'
              BranchSideFuncs:
                - str_append.5103
      Callsites:
        - Src:             'event-filter.c:501,33'
          Dst:             strlen
        - Src:             'event-filter.c:501,3'
          Dst:             str_append_escaped
        - Src:             'event-filter.c:504,3'
          Dst:             str_append
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    event_filter_export_query_expr
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - query
        - node
        - dest
      BBCount:         29
      ICount:          257
      EdgeCount:       56
      CyclomaticComplexity: 29
      functionsReached:
        - event_filter_append_escaped
        - event_filter_category_from_log_type
        - event_filter_export_query_expr
        - event_filter_export_query_expr_op
        - i_unreached
        - str_append
        - str_append_c
        - wanted_field_value_str
      functionUses:    6
      BranchProfiles:
        - Branch String:   'event-filter.c:536,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:536,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:538,3'
              BranchSideFuncs:
                - str_append_c.5104
                - i_unreached
                - str_append.5103
                - event_filter_export_query_expr
                - str_append_c.5104
                - event_filter_export_query_expr
                - str_append.5103
                - event_filter_export_query_expr
                - event_filter_export_query_expr
                - str_append.5103
                - event_filter_export_query_expr
            - BranchSide:      'event-filter.c:565,14'
              BranchSideFuncs:
                - str_append.5103
                - event_filter_export_query_expr_op
                - str_append.5103
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
            - BranchSide:      'event-filter.c:565,14'
              BranchSideFuncs:
                - str_append.5103
                - event_filter_export_query_expr_op
                - str_append.5103
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
            - BranchSide:      'event-filter.c:573,14'
              BranchSideFuncs:
                - str_append.5103
                - event_filter_export_query_expr_op
                - str_append.5103
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
            - BranchSide:      'event-filter.c:580,14'
              BranchSideFuncs:
                - str_append.5103
                - event_filter_export_query_expr_op
                - str_append.5103
                - event_filter_category_from_log_type
                - str_append.5103
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
            - BranchSide:      'event-filter.c:592,3'
              BranchSideFuncs:
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
                - event_filter_export_query_expr_op
                - str_append.5103
                - str_append_c.5104
                - wanted_field_value_str
                - event_filter_append_escaped
                - str_append_c.5104
            - BranchSide:      'event-filter.c:592,3'
              BranchSideFuncs:
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
                - event_filter_export_query_expr_op
                - str_append.5103
                - str_append_c.5104
                - wanted_field_value_str
                - event_filter_append_escaped
                - str_append_c.5104
            - BranchSide:      'event-filter.c:592,3'
              BranchSideFuncs:
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
                - event_filter_export_query_expr_op
                - str_append.5103
                - str_append_c.5104
                - wanted_field_value_str
                - event_filter_append_escaped
                - str_append_c.5104
        - Branch String:   'event-filter.c:539,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:541,35'
              BranchSideFuncs:
                - event_filter_export_query_expr
                - str_append.5103
                - event_filter_export_query_expr
                - str_append_c.5104
            - BranchSide:      'event-filter.c:546,35'
              BranchSideFuncs:
                - event_filter_export_query_expr
                - str_append.5103
                - event_filter_export_query_expr
                - str_append_c.5104
            - BranchSide:      'event-filter.c:551,15'
              BranchSideFuncs:
                - str_append.5103
                - event_filter_export_query_expr
                - str_append_c.5104
            - BranchSide:      'event-filter.c:559,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:559,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:559,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:559,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:559,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:561,3'
              BranchSideFuncs:
                - str_append_c.5104
        - Branch String:   'event-filter.c:582,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:583,4'
              BranchSideFuncs:
                - str_append_c.5104
                - event_filter_append_escaped
                - str_append_c.5104
            - BranchSide:      'event-filter.c:587,15'
              BranchSideFuncs:
                - event_filter_category_from_log_type
                - str_append.5103
      Callsites:
        - Src:             'event-filter.c:538,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:541,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:542,4'
          Dst:             str_append
        - Src:             'event-filter.c:543,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:546,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:547,4'
          Dst:             str_append
        - Src:             'event-filter.c:548,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:551,4'
          Dst:             str_append
        - Src:             'event-filter.c:552,4'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:559,4'
          Dst:             i_unreached
        - Src:             'event-filter.c:561,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:565,3'
          Dst:             str_append
        - Src:             'event-filter.c:566,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:566,3'
          Dst:             str_append
        - Src:             'event-filter.c:567,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:568,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:570,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:573,3'
          Dst:             str_append
        - Src:             'event-filter.c:574,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:574,3'
          Dst:             str_append
        - Src:             'event-filter.c:575,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:576,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:577,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:580,3'
          Dst:             str_append
        - Src:             'event-filter.c:581,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:581,3'
          Dst:             str_append
        - Src:             'event-filter.c:583,4'
          Dst:             str_append_c
        - Src:             'event-filter.c:584,4'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:585,4'
          Dst:             str_append_c
        - Src:             'event-filter.c:587,21'
          Dst:             event_filter_category_from_log_type
        - Src:             'event-filter.c:587,4'
          Dst:             str_append
        - Src:             'event-filter.c:592,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:593,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:594,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:595,20'
          Dst:             event_filter_export_query_expr_op
        - Src:             'event-filter.c:595,3'
          Dst:             str_append
        - Src:             'event-filter.c:596,3'
          Dst:             str_append_c
        - Src:             'event-filter.c:598,4'
          Dst:             wanted_field_value_str
        - Src:             'event-filter.c:597,3'
          Dst:             event_filter_append_escaped
        - Src:             'event-filter.c:600,3'
          Dst:             str_append_c
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    event_filter_category_from_log_type
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - log_type
      BBCount:         9
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:364,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:365,33'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:368,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:365,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:366,37'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:367,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'event-filter.c:368,2'
          Dst:             i_unreached
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    clone_expr
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - old
      BBCount:         27
      ICount:          377
      EdgeCount:       29
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - array_count_i
        - array_create_i
        - array_is_created_i
        - clone_expr
        - i_memcpy
        - malloc_multiply_check
        - p_malloc
        - p_strdup
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:376,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:377,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:379,8'
              BranchSideFuncs:
                - malloc_multiply_check.5118
                - p_malloc.5119
                - p_strdup
                - clone_expr
                - clone_expr
                - p_strdup
                - array_is_created_i.5082
                - array_count_i.5120
                - array_create_i.5121
                - p_strdup
                - array_append_i.5117
                - i_memcpy.5076
                - p_strdup
        - Branch String:   'event-filter.c:382,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:384,33'
              BranchSideFuncs:
                - clone_expr
                - clone_expr
            - BranchSide:      'event-filter.c:388,28'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'event-filter.c:393,29'
              BranchSideFuncs:
                - p_strdup
                - array_is_created_i.5082
                - array_count_i.5120
                - array_create_i.5121
                - p_strdup
                - array_append_i.5117
                - i_memcpy.5076
                - p_strdup
        - Branch String:   'event-filter.c:396,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:398,36'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'event-filter.c:401,30'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:404,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:407,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:411,8'
              BranchSideFuncs:
                - array_is_created_i.5082
                - array_count_i.5120
                - array_create_i.5121
                - p_strdup
                - array_append_i.5117
                - i_memcpy.5076
            - BranchSide:      'event-filter.c:422,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:411,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:413,5'
              BranchSideFuncs:
                - array_count_i.5120
                - array_create_i.5121
                - p_strdup
                - array_append_i.5117
                - i_memcpy.5076
            - BranchSide:      'event-filter.c:420,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:415,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:415,5'
              BranchSideFuncs:
                - i_memcpy.5076
                - p_strdup
                - array_append_i.5117
            - BranchSide:      'event-filter.c:415,5'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.5117
                - i_memcpy.5076
        - Branch String:   'event-filter.c:415,5'
          Branch Sides:
            - BranchSide:      'event-filter.c:416,21'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.5117
                - i_memcpy.5076
            - BranchSide:      'event-filter.c:419,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:379,8'
          Dst:             malloc_multiply_check
        - Src:             'event-filter.c:379,8'
          Dst:             p_malloc
        - Src:             'event-filter.c:384,22'
          Dst:             clone_expr
        - Src:             'event-filter.c:385,22'
          Dst:             clone_expr
        - Src:             'event-filter.c:389,24'
          Dst:             p_strdup
        - Src:             'event-filter.c:393,20'
          Dst:             p_strdup
        - Src:             'event-filter.c:398,27'
          Dst:             p_strdup
        - Src:             'event-filter.c:411,8'
          Dst:             array_is_created_i
        - Src:             'event-filter.c:413,5'
          Dst:             array_count_i
        - Src:             'event-filter.c:413,5'
          Dst:             array_create_i
        - Src:             'event-filter.c:415,5'
          Dst:             i_memcpy
        - Src:             'event-filter.c:416,12'
          Dst:             p_strdup
        - Src:             'event-filter.c:417,6'
          Dst:             array_append_i
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    2
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.5122
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.5122
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_begins_with
      functionSourceFile: '/src/dovecot/src/lib/./strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './strfuncs.h:100,16'
          Dst:             str_match
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    filter_node_requires_event_name
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - node
      BBCount:         17
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - filter_node_requires_event_name
      functionUses:    7
      BranchProfiles:
        - Branch String:   'event-filter.c:172,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:174,42'
              BranchSideFuncs:
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:176,42'
              BranchSideFuncs:
                - filter_node_requires_event_name
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:179,42'
              BranchSideFuncs:
                - filter_node_requires_event_name
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:182,10'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:176,61'
          Branch Sides:
            - BranchSide:      'event-filter.c:176,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:177,36'
              BranchSideFuncs:
                - filter_node_requires_event_name
        - Branch String:   'event-filter.c:179,61'
          Branch Sides:
            - BranchSide:      'event-filter.c:179,3'
              BranchSideFuncs:
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:180,36'
              BranchSideFuncs:
                - filter_node_requires_event_name
        - Branch String:   'event-filter.c:182,67'
          Branch Sides:
            - BranchSide:      'event-filter.c:182,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:183,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:174,10'
          Dst:             filter_node_requires_event_name
        - Src:             'event-filter.c:176,10'
          Dst:             filter_node_requires_event_name
        - Src:             'event-filter.c:177,4'
          Dst:             filter_node_requires_event_name
        - Src:             'event-filter.c:179,10'
          Dst:             filter_node_requires_event_name
        - Src:             'event-filter.c:180,4'
          Dst:             filter_node_requires_event_name
    - functionName:    add_node
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - pool
        - root
        - new
        - op
      BBCount:         13
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:154,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:154,2'
              BranchSideFuncs:
                - malloc_multiply_check.5118
                - p_malloc.5119
                - i_panic
            - BranchSide:      'event-filter.c:154,2'
              BranchSideFuncs:
                - malloc_multiply_check.5118
                - p_malloc.5119
                - i_panic
        - Branch String:   'event-filter.c:154,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:154,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:156,7'
              BranchSideFuncs:
                - malloc_multiply_check.5118
                - p_malloc.5119
        - Branch String:   'event-filter.c:156,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:157,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:161,11'
              BranchSideFuncs:
                - malloc_multiply_check.5118
                - p_malloc.5119
      Callsites:
        - Src:             'event-filter.c:154,2'
          Dst:             i_panic
        - Src:             'event-filter.c:161,11'
          Dst:             malloc_multiply_check
        - Src:             'event-filter.c:161,11'
          Dst:             p_malloc
    - functionName:    event_filter_get_or_alloc_internal_query
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - context
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_space_i
        - buffer_get_modifiable_data
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:135,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:136,7'
              BranchSideFuncs:
                - array_append_space_i.5126
            - BranchSide:      'event-filter.c:141,10'
              BranchSideFuncs:
                - array_append_space_i.5126
        - Branch String:   'event-filter.c:136,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:137,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:138,2'
              BranchSideFuncs:
                - array_append_space_i.5126
      Callsites:
        - Src:             'event-filter.c:135,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'event-filter.c:141,10'
          Dst:             array_append_space_i
    - functionName:    event_filter_deinit
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1276
      functionLinenumberEnd: 1278
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_category_unregister_callback
        - event_filter_category_registered
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:1277,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1277,2'
              BranchSideFuncs:
                - event_category_unregister_callback
            - BranchSide:      'event-filter.c:1277,2'
              BranchSideFuncs:
                - event_category_unregister_callback
      Callsites:
        - Src:             'event-filter.c:1277,2'
          Dst:             event_category_unregister_callback
        - Src:             'event-filter.c:1277,2'
          Dst:             event_filter_category_registered
    - functionName:    event_filter_category_registered
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1257
      functionLinenumberEnd: 1268
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - category
      BBCount:         11
      ICount:          82
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_get_modifiable_data
        - event_filter_query_update_category
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:1262,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1263,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_filter_query_update_category
            - BranchSide:      'event-filter.c:1268,1'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1263,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:1264,39'
              BranchSideFuncs:
                - event_filter_query_update_category
                - buffer_get_modifiable_data
            - BranchSide:      'event-filter.c:1267,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_filter_query_update_category
      Callsites:
        - Src:             'event-filter.c:1263,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'event-filter.c:1264,4'
          Dst:             event_filter_query_update_category
    - functionName:    event_filter_init
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1271
      functionLinenumberEnd: 1273
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_category_register_callback
        - event_filter_category_registered
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:1272,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1272,2'
              BranchSideFuncs:
                - event_category_register_callback
            - BranchSide:      'event-filter.c:1272,2'
              BranchSideFuncs:
                - event_category_register_callback
      Callsites:
        - Src:             'event-filter.c:1272,2'
          Dst:             event_category_register_callback
        - Src:             'event-filter.c:1272,2'
          Dst:             event_filter_category_registered
    - functionName:    event_filter_register_cmp
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1209
      functionLinenumberEnd: 1215
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - key
        - cmp
      BBCount:         7
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - p_strdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:1211,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1211,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1211,2'
              BranchSideFuncs:
                - p_strdup
      Callsites:
        - Src:             'event-filter.c:1211,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1213,20'
          Dst:             p_strdup
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_filter_match_iter_deinit
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1205
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _iter
      BBCount:         5
      ICount:          30
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:1204,2'
          Dst:             p_free_internal
    - functionName:    event_filter_match_iter_next
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - iter
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_get_i
        - event_filter_query_match
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter.c:1184,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1186,5'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1196,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1189,30'
          Branch Sides:
            - BranchSide:      'event-filter.c:1184,2'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1190,32'
              BranchSideFuncs:
                - event_filter_query_match
        - Branch String:   'event-filter.c:1189,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1184,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1194,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:1183,12'
          Dst:             array_get_i
        - Src:             'event-filter.c:1190,7'
          Dst:             event_filter_query_match
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    event_filter_query_match
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1098
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - query
        - event
        - source_filename
        - source_linenum
        - ctx
      BBCount:         7
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_query_match_eval
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:1093,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1093,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1093,2'
              BranchSideFuncs:
                - event_filter_query_match_eval
      Callsites:
        - Src:             'event-filter.c:1093,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1096,9'
          Dst:             event_filter_query_match_eval
    - functionName:    event_filter_query_match_eval
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1057
      functionLinenumberEnd: 1082
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - filter
        - node
        - event
        - source_filename
        - source_linenum
        - log_type
      BBCount:         20
      ICount:          151
      EdgeCount:       20
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_query_match_cmp
        - event_filter_query_match_eval
        - i_unreached
      functionUses:    6
      BranchProfiles:
        - Branch String:   'event-filter.c:1058,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1064,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1064,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1064,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1064,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1064,39'
              BranchSideFuncs:
                - event_filter_query_match_cmp
            - BranchSide:      'event-filter.c:1067,40'
              BranchSideFuncs:
                - event_filter_query_match_eval
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1072,40'
              BranchSideFuncs:
                - event_filter_query_match_eval
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1077,41'
              BranchSideFuncs:
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1081,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:1068,54'
          Branch Sides:
            - BranchSide:      'event-filter.c:1067,3'
              BranchSideFuncs:
                - event_filter_query_match_eval
            - BranchSide:      'event-filter.c:1069,34'
              BranchSideFuncs:
                - event_filter_query_match_eval
        - Branch String:   'event-filter.c:1073,55'
          Branch Sides:
            - BranchSide:      'event-filter.c:1072,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1074,34'
              BranchSideFuncs:
                - event_filter_query_match_eval
      Callsites:
        - Src:             'event-filter.c:1064,10'
          Dst:             event_filter_query_match_cmp
        - Src:             'event-filter.c:1067,10'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1069,4'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1072,10'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1074,4'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1077,11'
          Dst:             event_filter_query_match_eval
        - Src:             'event-filter.c:1081,2'
          Dst:             i_unreached
    - functionName:    event_filter_query_match_cmp
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1009
      functionLinenumberEnd: 1049
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - filter
        - node
        - event
        - source_filename
        - source_linenum
        - log_type
      BBCount:         42
      ICount:          265
      EdgeCount:       46
      CyclomaticComplexity: 6
      functionsReached:
        - event_has_category
        - event_match_field
        - i_panic
        - i_unreached
        - strchr
        - strcmp
        - t_pop
        - t_push
        - t_strdup_printf
        - wildcard_match_escaped
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:1010,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
        - Branch String:   'event-filter.c:1010,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
        - Branch String:   'event-filter.c:1010,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
        - Branch String:   'event-filter.c:1010,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
                - i_panic
        - Branch String:   'event-filter.c:1010,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1010,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1016,10'
              BranchSideFuncs:
                - event_match_field
                - event_match_field
                - event_has_category
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
                - wildcard_match_escaped
                - strcmp
                - i_unreached
                - i_unreached
        - Branch String:   'event-filter.c:1016,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1018,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter.c:1020,12'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:1023,12'
              BranchSideFuncs:
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:1028,15'
              BranchSideFuncs:
                - strchr
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
                - strcmp
            - BranchSide:      'event-filter.c:1038,30'
              BranchSideFuncs:
                - event_has_category
            - BranchSide:      'event-filter.c:1040,29'
              BranchSideFuncs:
                - event_match_field
            - BranchSide:      'event-filter.c:1044,29'
              BranchSideFuncs:
                - event_match_field
            - BranchSide:      'event-filter.c:1044,29'
              BranchSideFuncs:
                - event_match_field
            - BranchSide:      'event-filter.c:1048,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:1020,41'
          Branch Sides:
            - BranchSide:      'event-filter.c:1020,4'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:1021,18'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'event-filter.c:1023,41'
          Branch Sides:
            - BranchSide:      'event-filter.c:1023,4'
              BranchSideFuncs:
                - wildcard_match_escaped
            - BranchSide:      'event-filter.c:1024,28'
              BranchSideFuncs:
                - wildcard_match_escaped
        - Branch String:   'event-filter.c:1028,8'
          Branch Sides:
            - BranchSide:      'event-filter.c:1029,18'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:1030,9'
              BranchSideFuncs:
                - t_push
                - t_strdup_printf
                - strcmp
                - t_pop
                - i_panic
        - Branch String:   'event-filter.c:1034,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1034,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1034,6'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:1010,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1018,4'
          Dst:             i_unreached
        - Src:             'event-filter.c:1021,11'
          Dst:             strcmp
        - Src:             'event-filter.c:1024,5'
          Dst:             wildcard_match_escaped
        - Src:             'event-filter.c:1028,8'
          Dst:             strchr
        - Src:             'event-filter.c:1029,11'
          Dst:             strcmp
        - Src:             'event-filter.c:1030,9'
          Dst:             t_push
        - Src:             'event-filter.c:1032,6'
          Dst:             t_strdup_printf
        - Src:             'event-filter.c:1033,11'
          Dst:             strcmp
        - Src:             'event-filter.c:1034,6'
          Dst:             t_pop
        - Src:             'event-filter.c:1034,6'
          Dst:             i_panic
        - Src:             'event-filter.c:1038,11'
          Dst:             event_has_category
        - Src:             'event-filter.c:1040,11'
          Dst:             event_match_field
        - Src:             'event-filter.c:1044,11'
          Dst:             event_match_field
        - Src:             'event-filter.c:1048,2'
          Dst:             i_unreached
    - functionName:    event_filter_match_iter_init
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1164
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - event
        - ctx
      BBCount:         10
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - event_filter_match_fastpath
        - i_panic
        - malloc_multiply_check
        - p_malloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter.c:1167,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1167,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1169,9'
              BranchSideFuncs:
                - malloc_multiply_check.5118
                - p_malloc.5119
                - event_filter_match_fastpath
        - Branch String:   'event-filter.c:1173,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1173,6'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1174,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:1167,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1169,9'
          Dst:             malloc_multiply_check
        - Src:             'event-filter.c:1169,9'
          Dst:             p_malloc
        - Src:             'event-filter.c:1173,7'
          Dst:             event_filter_match_fastpath
    - functionName:    event_filter_match_fastpath
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1103
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - event
      BBCount:         7
      ICount:          37
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:1104,33'
          Branch Sides:
            - BranchSide:      'event-filter.c:1104,36'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1110,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1104,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1108,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1110,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:275,2'
          Branch Sides:
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:275,2'
          Dst:             i_panic
    - functionName:    event_filter_get_root_node
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1145
      functionLinenumberEnd: 1152
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - filter
        - idx
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - array_idx_i
      functionUses:    4
      BranchProfiles:
        - Branch String:   'event-filter.c:1146,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1147,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1150,3'
              BranchSideFuncs:
                - array_idx_i.5138
      Callsites:
        - Src:             'event-filter.c:1146,13'
          Dst:             array_count_i
        - Src:             'event-filter.c:1150,3'
          Dst:             array_idx_i
    - functionName:    event_filter_match_source
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1126
      functionLinenumberEnd: 1141
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - event
        - source_filename
        - source_linenum
        - ctx
      BBCount:         16
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - event_filter_match_fastpath
        - event_filter_query_match
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   'event-filter.c:1129,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1129,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:1131,35'
              BranchSideFuncs:
                - event_filter_match_fastpath
                - event_filter_query_match
        - Branch String:   'event-filter.c:1131,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1132,3'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1134,2'
              BranchSideFuncs:
                - event_filter_query_match
        - Branch String:   'event-filter.c:1134,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:1135,32'
              BranchSideFuncs:
                - event_filter_query_match
            - BranchSide:      'event-filter.c:1140,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:1135,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:1138,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1139,2'
              BranchSideFuncs:
                - event_filter_query_match
      Callsites:
        - Src:             'event-filter.c:1129,2'
          Dst:             i_panic
        - Src:             'event-filter.c:1131,7'
          Dst:             event_filter_match_fastpath
        - Src:             'event-filter.c:1135,7'
          Dst:             event_filter_query_match
    - functionName:    event_filter_match
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1120
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - event
        - ctx
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_filter_match_source
      functionUses:    5
      BranchProfiles:
        - Branch String:   'event-filter.c:1116,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:1117,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:1118,35'
              BranchSideFuncs:
                - event_filter_match_source
      Callsites:
        - Src:             'event-filter.c:1118,9'
          Dst:             event_filter_match_source
    - functionName:    event_filter_get_expr_for_testing
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - count_r
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_get_i
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter.c:635,9'
          Branch Sides:
            - BranchSide:      'event-filter.c:635,9'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:635,34'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:633,12'
          Dst:             array_get_i
    - functionName:    event_filter_export_query
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - query
        - dest
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_export_query_expr
        - str_append_c
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:609,2'
          Dst:             str_append_c
        - Src:             'event-filter.c:610,2'
          Dst:             event_filter_export_query_expr
        - Src:             'event-filter.c:611,2'
          Dst:             str_append_c
    - functionName:    event_filter_export
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - dest
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - event_filter_export_query
        - str_append
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter.c:619,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:620,8'
              BranchSideFuncs:
                - str_append.5103
                - event_filter_export_query
            - BranchSide:      'event-filter.c:625,1'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:620,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:621,15'
              BranchSideFuncs:
                - event_filter_export_query
                - str_append.5103
            - BranchSide:      'event-filter.c:622,9'
              BranchSideFuncs:
                - event_filter_export_query
                - str_append.5103
      Callsites:
        - Src:             'event-filter.c:621,4'
          Dst:             str_append
        - Src:             'event-filter.c:623,3'
          Dst:             event_filter_export_query
    - functionName:    event_filter_merge_with_context
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
        - op
        - new_context
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_merge_with_context_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:494,2'
          Dst:             event_filter_merge_with_context_internal
    - functionName:    event_filter_merge_with_context_internal
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - dest
        - src
        - op
        - new_context
        - with_context
      BBCount:         23
      ICount:          164
      EdgeCount:       24
      CyclomaticComplexity: 3
      functionsReached:
        - add_node
        - clone_expr
        - event_filter_get_or_alloc_internal_query
        - filter_node_requires_event_name
        - i_panic
        - i_unreached
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:442,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:444,11'
              BranchSideFuncs:
                - t_push
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - t_pop
                - i_panic
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:447,11'
              BranchSideFuncs:
                - t_push
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - t_pop
                - i_panic
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:450,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'event-filter.c:453,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:453,42'
              BranchSideFuncs:
                - t_push
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - t_pop
                - i_panic
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:464,1'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:454,19'
          Branch Sides:
            - BranchSide:      'event-filter.c:454,34'
              BranchSideFuncs:
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - t_pop
                - t_push
                - i_panic
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:454,48'
              BranchSideFuncs:
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - t_pop
                - t_push
                - i_panic
                - filter_node_requires_event_name
        - Branch String:   'event-filter.c:461,55'
          Branch Sides:
            - BranchSide:      'event-filter.c:461,3'
              BranchSideFuncs:
                - filter_node_requires_event_name
                - t_pop
                - t_push
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - i_panic
            - BranchSide:      'event-filter.c:462,36'
              BranchSideFuncs:
                - filter_node_requires_event_name
                - t_pop
                - t_push
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - i_panic
        - Branch String:   'event-filter.c:463,4'
          Branch Sides:
            - BranchSide:      'event-filter.c:463,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:463,4'
              BranchSideFuncs:
                - t_push
                - event_filter_get_or_alloc_internal_query
                - clone_expr
                - add_node
                - t_pop
                - i_panic
                - filter_node_requires_event_name
      Callsites:
        - Src:             'event-filter.c:450,3'
          Dst:             i_unreached
        - Src:             'event-filter.c:453,42'
          Dst:             t_push
        - Src:             'event-filter.c:457,9'
          Dst:             event_filter_get_or_alloc_internal_query
        - Src:             'event-filter.c:460,5'
          Dst:             clone_expr
        - Src:             'event-filter.c:459,3'
          Dst:             add_node
        - Src:             'event-filter.c:462,4'
          Dst:             filter_node_requires_event_name
        - Src:             'event-filter.c:463,4'
          Dst:             t_pop
        - Src:             'event-filter.c:463,4'
          Dst:             i_panic
    - functionName:    event_filter_merge
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - dest
        - src
        - op
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_merge_with_context_internal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:486,2'
          Dst:             event_filter_merge_with_context_internal
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:244,2'
          Dst:             buffer_delete
    - functionName:    event_filter_remove_queries_with_context
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - context
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_delete_i
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter.c:472,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:473,7'
              BranchSideFuncs:
                - array_delete_i.5149
            - BranchSide:      'event-filter.c:479,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:473,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:474,10'
              BranchSideFuncs:
                - array_delete_i.5149
            - BranchSide:      'event-filter.c:478,2'
              BranchSideFuncs:
                - array_delete_i.5149
      Callsites:
        - Src:             'event-filter.c:475,4'
          Dst:             array_delete_i
    - functionName:    event_filter_category_to_log_type
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - log_type_r
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:350,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:351,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:356,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:351,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:352,44'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:355,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'event-filter.c:351,7'
          Dst:             strcmp
    - functionName:    event_filter_node_has_field_prefix
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - node
        - key
        - prefix
      BBCount:         30
      ICount:          149
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - event_filter_node_has_field_prefix
        - str_begins_with
        - strcmp
        - strlen
        - strncmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:309,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:311,7'
              BranchSideFuncs:
                - strcmp
                - str_begins_with.5125
                - strlen
                - strncmp
            - BranchSide:      'event-filter.c:320,5'
              BranchSideFuncs:
                - event_filter_node_has_field_prefix
                - event_filter_node_has_field_prefix
            - BranchSide:      'event-filter.c:320,5'
              BranchSideFuncs:
                - event_filter_node_has_field_prefix
                - event_filter_node_has_field_prefix
            - BranchSide:      'event-filter.c:326,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:328,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:311,62'
          Branch Sides:
            - BranchSide:      'event-filter.c:312,14'
              BranchSideFuncs:
                - strcmp
                - str_begins_with.5125
                - strlen
                - strncmp
            - BranchSide:      'event-filter.c:316,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:312,41'
          Branch Sides:
            - BranchSide:      'event-filter.c:313,7'
              BranchSideFuncs:
                - str_begins_with.5125
                - strlen
                - strncmp
            - BranchSide:      'event-filter.c:316,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:313,60'
          Branch Sides:
            - BranchSide:      'event-filter.c:311,7'
              BranchSideFuncs:
                - str_begins_with.5125
                - strlen
                - strncmp
            - BranchSide:      'event-filter.c:316,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:311,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:314,7'
              BranchSideFuncs:
                - strlen
                - strncmp
            - BranchSide:      'event-filter.c:314,7'
              BranchSideFuncs:
                - str_begins_with.5125
        - Branch String:   'event-filter.c:314,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:315,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:316,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:311,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:315,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:316,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:320,37'
          Branch Sides:
            - BranchSide:      'event-filter.c:322,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:323,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:319,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:323,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:324,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:312,7'
          Dst:             strcmp
        - Src:             'event-filter.c:314,7'
          Dst:             strlen
        - Src:             'event-filter.c:314,7'
          Dst:             strncmp
        - Src:             'event-filter.c:314,7'
          Dst:             str_begins_with
        - Src:             'event-filter.c:319,7'
          Dst:             event_filter_node_has_field_prefix
        - Src:             'event-filter.c:321,7'
          Dst:             event_filter_node_has_field_prefix
    - functionName:    event_filter_has_field_prefix
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - key
        - prefix
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - event_filter_node_has_field_prefix
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:338,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:339,42'
              BranchSideFuncs:
                - event_filter_node_has_field_prefix
            - BranchSide:      'event-filter.c:342,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:339,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:340,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:341,2'
              BranchSideFuncs:
                - event_filter_node_has_field_prefix
      Callsites:
        - Src:             'event-filter.c:339,7'
          Dst:             event_filter_node_has_field_prefix
    - functionName:    event_filter_node_find_field_exact
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - node
        - key
        - op_not
        - op_not_r
      BBCount:         22
      ICount:          154
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - event_filter_node_find_field_exact
        - strcmp
      functionUses:    4
      BranchProfiles:
        - Branch String:   'event-filter.c:262,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:264,7'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:273,46'
              BranchSideFuncs:
                - event_filter_node_find_field_exact
                - event_filter_node_find_field_exact
            - BranchSide:      'event-filter.c:273,46'
              BranchSideFuncs:
                - event_filter_node_find_field_exact
                - event_filter_node_find_field_exact
            - BranchSide:      'event-filter.c:283,45'
              BranchSideFuncs:
                - event_filter_node_find_field_exact
            - BranchSide:      'event-filter.c:286,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:264,62'
          Branch Sides:
            - BranchSide:      'event-filter.c:265,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'event-filter.c:270,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:265,41'
          Branch Sides:
            - BranchSide:      'event-filter.c:266,7'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:270,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:264,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:267,16'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:270,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:275,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:276,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:277,46'
              BranchSideFuncs:
                - event_filter_node_find_field_exact
        - Branch String:   'event-filter.c:279,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:280,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:281,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:265,7'
          Dst:             strcmp
        - Src:             'event-filter.c:273,11'
          Dst:             event_filter_node_find_field_exact
        - Src:             'event-filter.c:277,11'
          Dst:             event_filter_node_find_field_exact
        - Src:             'event-filter.c:283,10'
          Dst:             event_filter_node_find_field_exact
    - functionName:    event_filter_find_field_exact
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
        - key
        - op_not_r
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - event_filter_node_find_field_exact
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:297,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:298,46'
              BranchSideFuncs:
                - event_filter_node_find_field_exact
            - BranchSide:      'event-filter.c:302,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:299,7'
          Branch Sides:
            - BranchSide:      'event-filter.c:300,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:301,2'
              BranchSideFuncs:
                - event_filter_node_find_field_exact
      Callsites:
        - Src:             'event-filter.c:298,11'
          Dst:             event_filter_node_find_field_exact
    - functionName:    event_filter_parse_case_sensitive
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - filter
        - error_r
      BBCount:         12
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - event_filter_parse_real
        - i_panic
        - t_pop_pass_str
        - t_push
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:252,4'
          Branch Sides:
            - BranchSide:      'event-filter.c:252,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'event-filter.c:252,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
        - Branch String:   'event-filter.c:252,4'
          Branch Sides:
            - BranchSide:      'event-filter.c:252,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:252,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:250,2'
          Dst:             t_push
        - Src:             'event-filter.c:251,9'
          Dst:             event_filter_parse_real
        - Src:             'event-filter.c:252,4'
          Dst:             t_pop_pass_str
        - Src:             'event-filter.c:252,4'
          Dst:             i_panic
    - functionName:    event_filter_parse_real
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - filter
        - case_sensitive
        - error_r
      BBCount:         23
      ICount:          170
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - add_node
        - event_filter_get_or_alloc_internal_query
        - event_filter_parser_lex_destroy
        - event_filter_parser_lex_init
        - event_filter_parser_parse
        - event_filter_parser_set_extra
        - filter_node_requires_event_name
        - i_panic
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter.c:209,17'
          Branch Sides:
            - BranchSide:      'event-filter.c:209,27'
              BranchSideFuncs:
                - i_panic
                - event_filter_get_or_alloc_internal_query
                - add_node
                - filter_node_requires_event_name
                - i_panic
            - BranchSide:      'event-filter.c:220,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'event-filter.c:209,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:211,3'
              BranchSideFuncs:
                - event_filter_get_or_alloc_internal_query
                - add_node
                - filter_node_requires_event_name
                - i_panic
            - BranchSide:      'event-filter.c:220,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'event-filter.c:211,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:211,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:213,56'
              BranchSideFuncs:
                - event_filter_get_or_alloc_internal_query
                - add_node
                - filter_node_requires_event_name
        - Branch String:   'event-filter.c:218,59'
          Branch Sides:
            - BranchSide:      'event-filter.c:218,3'
              BranchSideFuncs:
                - filter_node_requires_event_name
            - BranchSide:      'event-filter.c:219,42'
              BranchSideFuncs:
                - filter_node_requires_event_name
        - Branch String:   'event-filter.c:222,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:222,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:224,20'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:197,14'
          Dst:             strlen
        - Src:             'event-filter.c:202,2'
          Dst:             event_filter_parser_lex_init
        - Src:             'event-filter.c:203,2'
          Dst:             event_filter_parser_set_extra
        - Src:             'event-filter.c:205,8'
          Dst:             event_filter_parser_parse
        - Src:             'event-filter.c:207,2'
          Dst:             event_filter_parser_lex_destroy
        - Src:             'event-filter.c:211,3'
          Dst:             i_panic
        - Src:             'event-filter.c:213,15'
          Dst:             event_filter_get_or_alloc_internal_query
        - Src:             'event-filter.c:215,3'
          Dst:             add_node
        - Src:             'event-filter.c:219,4'
          Dst:             filter_node_requires_event_name
        - Src:             'event-filter.c:222,3'
          Dst:             i_panic
    - functionName:    event_filter_parse
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - filter
        - error_r
      BBCount:         12
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - event_filter_parse_real
        - i_panic
        - t_pop_pass_str
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter.c:241,4'
          Branch Sides:
            - BranchSide:      'event-filter.c:241,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
            - BranchSide:      'event-filter.c:241,4'
              BranchSideFuncs:
                - t_pop_pass_str
                - i_panic
        - Branch String:   'event-filter.c:241,4'
          Branch Sides:
            - BranchSide:      'event-filter.c:241,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:241,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:239,2'
          Dst:             t_push
        - Src:             'event-filter.c:240,9'
          Dst:             event_filter_parse_real
        - Src:             'event-filter.c:241,4'
          Dst:             t_pop_pass_str
        - Src:             'event-filter.c:241,4'
          Dst:             i_panic
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:176,6'
          Branch Sides:
            - BranchSide:      './mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_filter_unref
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _filter
      BBCount:         25
      ICount:          138
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - pool_unref
      functionUses:    9
      BranchProfiles:
        - Branch String:   'event-filter.c:86,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:87,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:88,2'
              BranchSideFuncs:
                - pool_unref.5161
                - i_panic
        - Branch String:   'event-filter.c:88,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:88,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:90,3'
              BranchSideFuncs:
                - pool_unref.5161
        - Branch String:   'event-filter.c:91,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:92,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:94,7'
              BranchSideFuncs:
                - pool_unref.5161
        - Branch String:   'event-filter.c:94,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:94,6'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:95,3'
              BranchSideFuncs:
                - pool_unref.5161
        - Branch String:   'event-filter.c:95,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:95,3'
              BranchSideFuncs:
                - pool_unref.5161
            - BranchSide:      'event-filter.c:95,3'
              BranchSideFuncs:
                - pool_unref.5161
        - Branch String:   'event-filter.c:95,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:95,3'
              BranchSideFuncs:
                - pool_unref.5161
            - BranchSide:      'event-filter.c:98,15'
              BranchSideFuncs:
                - pool_unref.5161
      Callsites:
        - Src:             'event-filter.c:88,2'
          Dst:             i_panic
        - Src:             'event-filter.c:98,3'
          Dst:             pool_unref
    - functionName:    event_filter_ref
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:78,2'
          Branch Sides:
            - BranchSide:      'event-filter.c:78,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter.c:78,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:78,2'
          Dst:             i_panic
    - functionName:    event_filter_create_fragment
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_create_real
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:73,9'
          Dst:             event_filter_create_real
    - functionName:    event_filter_create_real
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - pool
        - fragment
      BBCount:         11
      ICount:          83
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - array_create_i
        - malloc_multiply_check
        - p_malloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter.c:56,6'
          Branch Sides:
            - BranchSide:      'event-filter.c:56,6'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:57,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter.c:57,3'
          Branch Sides:
            - BranchSide:      'event-filter.c:57,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter.c:57,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter.c:50,11'
          Dst:             malloc_multiply_check
        - Src:             'event-filter.c:50,11'
          Dst:             p_malloc
        - Src:             'event-filter.c:55,2'
          Dst:             array_create_i
    - functionName:    event_filter_create_with_pool
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_create_real
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter.c:68,9'
          Dst:             event_filter_create_real
    - functionName:    event_filter_create
      functionSourceFile: '/src/dovecot/src/lib/event-filter.c'
      linkageType:     externalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_create_real
        - pool_alloconly_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter.c:63,34'
          Branch Sides:
            - BranchSide:      'event-filter.c:63,34'
              BranchSideFuncs:
                - pool_alloconly_create
                - event_filter_create_real
            - BranchSide:      'event-filter.c:63,34'
              BranchSideFuncs:
                - pool_alloconly_create
                - event_filter_create_real
      Callsites:
        - Src:             'event-filter.c:63,34'
          Dst:             pool_alloconly_create
        - Src:             'event-filter.c:63,9'
          Dst:             event_filter_create_real
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    event_filter_parser_input_proc
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf
        - size
        - scanner
      BBCount:         13
      ICount:          113
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - event_filter_parser_get_extra
        - i_memcpy
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.l:122,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:123,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:125,2'
              BranchSideFuncs:
                - i_memcpy.5262
                - i_panic
        - Branch String:   'event-filter-lexer.l:125,2'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:125,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-filter-lexer.l:127,14'
              BranchSideFuncs:
                - i_memcpy.5262
        - Branch String:   'event-filter-lexer.l:127,14'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:127,12'
              BranchSideFuncs:
                - i_memcpy.5262
            - BranchSide:      'event-filter-lexer.l:127,12'
              BranchSideFuncs:
                - i_memcpy.5262
      Callsites:
        - Src:             'event-filter-lexer.l:120,10'
          Dst:             event_filter_parser_get_extra
        - Src:             'event-filter-lexer.l:125,2'
          Dst:             i_panic
        - Src:             'event-filter-lexer.l:128,2'
          Dst:             i_memcpy
    - functionName:    event_filter_parser_get_extra
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1945
      functionLinenumberEnd: 1947
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_filter_parser_realloc
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr
        - bytes
        - yyscanner
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter-lexer.l:107,9'
          Dst:             i_realloc
    - functionName:    event_filter_parser_lex_destroy
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2192
      functionLinenumberEnd: 2217
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         12
      ICount:          103
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - event_filter_parser__delete_buffer
        - event_filter_parser_free
        - event_filter_parser_pop_buffer_state
        - yy_init_globals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:2196,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2196,2'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
                - yy_init_globals.5272
                - event_filter_parser_free
                - event_filter_parser__delete_buffer
                - event_filter_parser_pop_buffer_state
            - BranchSide:      'event-filter-lexer.c:2196,2'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
                - yy_init_globals.5272
                - event_filter_parser_free
                - event_filter_parser__delete_buffer
                - event_filter_parser_pop_buffer_state
        - Branch String:   'event-filter-lexer.c:2196,2'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2197,21'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser_pop_buffer_state
                - event_filter_parser_free
                - event_filter_parser_free
                - yy_init_globals.5272
                - event_filter_parser_free
            - BranchSide:      'event-filter-lexer.c:2203,9'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
                - yy_init_globals.5272
                - event_filter_parser_free
        - Branch String:   'event-filter-lexer.c:2197,21'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2197,41'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser_pop_buffer_state
                - event_filter_parser_free
                - event_filter_parser_free
                - yy_init_globals.5272
                - event_filter_parser_free
            - BranchSide:      'event-filter-lexer.c:2197,41'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser_pop_buffer_state
                - event_filter_parser_free
                - event_filter_parser_free
                - yy_init_globals.5272
                - event_filter_parser_free
      Callsites:
        - Src:             'event-filter-lexer.c:2197,3'
          Dst:             event_filter_parser__delete_buffer
        - Src:             'event-filter-lexer.c:2199,3'
          Dst:             event_filter_parser_pop_buffer_state
        - Src:             'event-filter-lexer.c:2203,2'
          Dst:             event_filter_parser_free
        - Src:             'event-filter-lexer.c:2207,9'
          Dst:             event_filter_parser_free
        - Src:             'event-filter-lexer.c:2212,5'
          Dst:             yy_init_globals
        - Src:             'event-filter-lexer.c:2215,5'
          Dst:             event_filter_parser_free
    - functionName:    event_filter_parser__delete_buffer
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1651
      functionLinenumberEnd: 1664
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - b
        - yyscanner
      BBCount:         15
      ICount:          92
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - event_filter_parser_free
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1654,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1655,3'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
            - BranchSide:      'event-filter-lexer.c:1657,7'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
        - Branch String:   'event-filter-lexer.c:1657,12'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1657,9'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
            - BranchSide:      'event-filter-lexer.c:1657,9'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
        - Branch String:   'event-filter-lexer.c:1657,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1658,3'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
            - BranchSide:      'event-filter-lexer.c:1660,7'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
        - Branch String:   'event-filter-lexer.c:1660,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1661,20'
              BranchSideFuncs:
                - event_filter_parser_free
                - event_filter_parser_free
            - BranchSide:      'event-filter-lexer.c:1663,19'
              BranchSideFuncs:
                - event_filter_parser_free
      Callsites:
        - Src:             'event-filter-lexer.c:1661,3'
          Dst:             event_filter_parser_free
        - Src:             'event-filter-lexer.c:1663,2'
          Dst:             event_filter_parser_free
    - functionName:    event_filter_parser_pop_buffer_state
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1761
      functionLinenumberEnd: 1775
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         25
      ICount:          140
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - event_filter_parser__delete_buffer
        - event_filter_parser__load_buffer_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1763,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1763,7'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1763,6'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1763,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1764,3'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1766,19'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1763,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1764,3'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1766,19'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1766,19'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1766,39'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1766,39'
              BranchSideFuncs:
                - event_filter_parser__delete_buffer
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1768,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1769,5'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1771,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1771,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1771,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1771,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1771,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1771,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1772,25'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1771,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1771,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1772,25'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
      Callsites:
        - Src:             'event-filter-lexer.c:1766,2'
          Dst:             event_filter_parser__delete_buffer
        - Src:             'event-filter-lexer.c:1772,3'
          Dst:             event_filter_parser__load_buffer_state
    - functionName:    event_filter_parser_free
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr
        - yyscanner
      BBCount:         5
      ICount:          26
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter-lexer.l:112,2'
          Dst:             p_free_internal
    - functionName:    yy_init_globals
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2158
      functionLinenumberEnd: 2187
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          44
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser__load_buffer_state
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1608
      functionLinenumberEnd: 1614
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          60
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_lex_init_extra
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2131
      functionLinenumberEnd: 2155
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yy_user_defined
        - ptr_yy_globals
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - event_filter_parser_alloc
        - event_filter_parser_set_extra
        - yy_init_globals
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:2136,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2137,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'event-filter-lexer.c:2141,34'
              BranchSideFuncs:
                - event_filter_parser_alloc
                - event_filter_parser_set_extra
                - yy_init_globals.5272
                - __errno_location
        - Branch String:   'event-filter-lexer.c:2143,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2144,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'event-filter-lexer.c:2150,13'
              BranchSideFuncs:
                - event_filter_parser_set_extra
                - yy_init_globals.5272
      Callsites:
        - Src:             'event-filter-lexer.c:2134,5'
          Dst:             event_filter_parser_set_extra
        - Src:             'event-filter-lexer.c:2137,9'
          Dst:             __errno_location
        - Src:             'event-filter-lexer.c:2141,34'
          Dst:             event_filter_parser_alloc
        - Src:             'event-filter-lexer.c:2144,9'
          Dst:             __errno_location
        - Src:             'event-filter-lexer.c:2152,5'
          Dst:             event_filter_parser_set_extra
        - Src:             'event-filter-lexer.c:2154,12'
          Dst:             yy_init_globals
    - functionName:    event_filter_parser_set_extra
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2018
      functionLinenumberEnd: 2021
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - user_defined
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_alloc
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.l'
      linkageType:     externalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - bytes
        - yyscanner
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_malloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter-lexer.l:102,9'
          Dst:             i_malloc
    - functionName:    event_filter_parser_lex_init
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2104
      functionLinenumberEnd: 2121
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ptr_yy_globals
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - event_filter_parser_alloc
        - yy_init_globals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:2105,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2106,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'event-filter-lexer.c:2110,34'
              BranchSideFuncs:
                - event_filter_parser_alloc
                - yy_init_globals.5272
                - __errno_location
        - Branch String:   'event-filter-lexer.c:2112,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2113,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'event-filter-lexer.c:2118,13'
              BranchSideFuncs:
                - yy_init_globals.5272
      Callsites:
        - Src:             'event-filter-lexer.c:2106,9'
          Dst:             __errno_location
        - Src:             'event-filter-lexer.c:2110,34'
          Dst:             event_filter_parser_alloc
        - Src:             'event-filter-lexer.c:2113,9'
          Dst:             __errno_location
        - Src:             'event-filter-lexer.c:2120,12'
          Dst:             yy_init_globals
    - functionName:    event_filter_parser_set_lval
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2092
      functionLinenumberEnd: 2095
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yylval_param
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_get_lval
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2086
      functionLinenumberEnd: 2088
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_set_debug
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2078
      functionLinenumberEnd: 2081
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _bdebug
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_get_debug
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2072
      functionLinenumberEnd: 2074
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_set_out
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2066
      functionLinenumberEnd: 2069
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _out_str
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_set_in
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2060
      functionLinenumberEnd: 2063
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _in_str
        - yyscanner
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_set_column
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2043
      functionLinenumberEnd: 2051
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _column_no
        - yyscanner
      BBCount:         11
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_fatal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:2047,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2047,15'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:2047,13'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'event-filter-lexer.c:2047,15'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2047,15'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:2048,12'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'event-filter-lexer.c:2047,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2047,13'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:2048,12'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'event-filter-lexer.c:2048,12'
          Dst:             i_fatal
    - functionName:    event_filter_parser_set_lineno
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2028
      functionLinenumberEnd: 2036
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _line_number
        - yyscanner
      BBCount:         11
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_fatal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:2032,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2032,15'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:2032,13'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'event-filter-lexer.c:2032,15'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2032,15'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:2033,12'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'event-filter-lexer.c:2032,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:2032,13'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:2033,12'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'event-filter-lexer.c:2033,12'
          Dst:             i_fatal
    - functionName:    event_filter_parser_get_text
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 2008
      functionLinenumberEnd: 2010
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_get_leng
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1998
      functionLinenumberEnd: 2000
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_get_out
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1989
      functionLinenumberEnd: 1991
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_get_in
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1980
      functionLinenumberEnd: 1982
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_filter_parser_get_column
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1967
      functionLinenumberEnd: 1974
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1970,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1970,15'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1970,13'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1970,15'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1971,13'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1973,12'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1970,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1971,13'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1973,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_filter_parser_get_lineno
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1954
      functionLinenumberEnd: 1961
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1957,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1957,15'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1957,13'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1957,15'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1958,13'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1960,12'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1957,13'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1958,13'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1960,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_filter_parser__scan_bytes
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1881
      functionLinenumberEnd: 1907
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - yybytes
        - _yybytes_len
        - yyscanner
      BBCount:         11
      ICount:          100
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - event_filter_parser__scan_buffer
        - event_filter_parser_alloc
        - i_fatal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1890,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1891,3'
              BranchSideFuncs:
                - event_filter_parser__scan_buffer
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1893,10'
              BranchSideFuncs:
                - event_filter_parser__scan_buffer
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1893,2'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1894,12'
              BranchSideFuncs:
                - event_filter_parser__scan_buffer
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1896,22'
              BranchSideFuncs:
                - event_filter_parser__scan_buffer
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1899,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1900,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1905,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter-lexer.c:1889,17'
          Dst:             event_filter_parser_alloc
        - Src:             'event-filter-lexer.c:1891,3'
          Dst:             i_fatal
        - Src:             'event-filter-lexer.c:1898,6'
          Dst:             event_filter_parser__scan_buffer
        - Src:             'event-filter-lexer.c:1900,3'
          Dst:             i_fatal
    - functionName:    event_filter_parser__scan_buffer
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1831
      functionLinenumberEnd: 1857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - base
        - size
        - yyscanner
      BBCount:         13
      ICount:          117
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - event_filter_parser__switch_to_buffer
        - event_filter_parser_alloc
        - i_fatal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1834,16'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1835,7'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1838,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1835,45'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1836,7'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1838,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1834,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1838,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1840,68'
              BranchSideFuncs:
                - event_filter_parser_alloc
                - i_fatal
                - event_filter_parser__switch_to_buffer
        - Branch String:   'event-filter-lexer.c:1841,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1842,3'
              BranchSideFuncs:
                - event_filter_parser__switch_to_buffer
            - BranchSide:      'event-filter-lexer.c:1844,26'
              BranchSideFuncs:
                - event_filter_parser__switch_to_buffer
      Callsites:
        - Src:             'event-filter-lexer.c:1840,24'
          Dst:             event_filter_parser_alloc
        - Src:             'event-filter-lexer.c:1842,3'
          Dst:             i_fatal
        - Src:             'event-filter-lexer.c:1854,2'
          Dst:             event_filter_parser__switch_to_buffer
    - functionName:    event_filter_parser__switch_to_buffer
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1576
      functionLinenumberEnd: 1605
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - new_buffer
        - yyscanner
      BBCount:         17
      ICount:          133
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - event_filter_parser__load_buffer_state
        - event_filter_parser_ensure_buffer_stack
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1585,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1585,28'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1585,28'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1585,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1586,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1588,7'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1588,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1588,7'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1588,7'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1588,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1591,22'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1596,29'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1588,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1591,22'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1596,29'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
      Callsites:
        - Src:             'event-filter-lexer.c:1584,2'
          Dst:             event_filter_parser_ensure_buffer_stack
        - Src:             'event-filter-lexer.c:1597,2'
          Dst:             event_filter_parser__load_buffer_state
    - functionName:    event_filter_parser_ensure_buffer_stack
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1781
      functionLinenumberEnd: 1822
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         12
      ICount:          121
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - event_filter_parser_alloc
        - event_filter_parser_realloc
        - i_fatal
      functionUses:    4
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1785,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1791,20'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1805,6'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1795,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1796,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1798,10'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1805,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1805,6'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1808,13'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1815,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1816,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1819,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter-lexer.c:1792,52'
          Dst:             event_filter_parser_alloc
        - Src:             'event-filter-lexer.c:1796,4'
          Dst:             i_fatal
        - Src:             'event-filter-lexer.c:1811,52'
          Dst:             event_filter_parser_realloc
        - Src:             'event-filter-lexer.c:1816,4'
          Dst:             i_fatal
    - functionName:    event_filter_parser__scan_string
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1868
      functionLinenumberEnd: 1870
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yystr
        - yyscanner
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_parser__scan_bytes
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter-lexer.c:1870,37'
          Dst:             strlen
        - Src:             'event-filter-lexer.c:1870,9'
          Dst:             event_filter_parser__scan_bytes
    - functionName:    event_filter_parser_push_buffer_state
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1730
      functionLinenumberEnd: 1754
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - new_buffer
        - yyscanner
      BBCount:         22
      ICount:          149
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - event_filter_parser__load_buffer_state
        - event_filter_parser_ensure_buffer_stack
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1732,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1733,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1735,24'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1738,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1738,7'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1738,7'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1738,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1741,22'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1747,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1738,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1741,22'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1747,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1747,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1747,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1747,6'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1747,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1748,3'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1749,29'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1747,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1748,3'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1749,29'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
      Callsites:
        - Src:             'event-filter-lexer.c:1735,2'
          Dst:             event_filter_parser_ensure_buffer_stack
        - Src:             'event-filter-lexer.c:1752,2'
          Dst:             event_filter_parser__load_buffer_state
    - functionName:    event_filter_parser__flush_buffer
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1700
      functionLinenumberEnd: 1721
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - b
        - yyscanner
      BBCount:         11
      ICount:          89
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - event_filter_parser__load_buffer_state
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1702,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1703,3'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1705,2'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1719,12'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1719,9'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1719,9'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1719,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1719,7'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1720,25'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
      Callsites:
        - Src:             'event-filter-lexer.c:1720,3'
          Dst:             event_filter_parser__load_buffer_state
    - functionName:    event_filter_parser__init_buffer
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1672
      functionLinenumberEnd: 1693
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - b
        - file
        - yyscanner
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - event_filter_parser__flush_buffer
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1685,14'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1685,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'event-filter-lexer.c:1685,11'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'event-filter-lexer.c:1685,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1685,9'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'event-filter-lexer.c:1686,9'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'event-filter-lexer.c:1673,15'
          Dst:             __errno_location
        - Src:             'event-filter-lexer.c:1676,2'
          Dst:             event_filter_parser__flush_buffer
        - Src:             'event-filter-lexer.c:1692,2'
          Dst:             __errno_location
    - functionName:    event_filter_parser_restart
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1558
      functionLinenumberEnd: 1569
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input_file
        - yyscanner
      BBCount:         14
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - event_filter_parser__create_buffer
        - event_filter_parser__init_buffer
        - event_filter_parser__load_buffer_state
        - event_filter_parser_ensure_buffer_stack
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1561,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1561,9'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1561,7'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1561,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1562,32'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1567,18'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1561,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1562,32'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1567,18'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
        - Branch String:   'event-filter-lexer.c:1567,18'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1567,18'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
            - BranchSide:      'event-filter-lexer.c:1567,18'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
                - event_filter_parser__load_buffer_state
      Callsites:
        - Src:             'event-filter-lexer.c:1562,9'
          Dst:             event_filter_parser_ensure_buffer_stack
        - Src:             'event-filter-lexer.c:1564,13'
          Dst:             event_filter_parser__create_buffer
        - Src:             'event-filter-lexer.c:1567,2'
          Dst:             event_filter_parser__init_buffer
        - Src:             'event-filter-lexer.c:1568,2'
          Dst:             event_filter_parser__load_buffer_state
    - functionName:    event_filter_parser__create_buffer
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 1623
      functionLinenumberEnd: 1643
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - file
        - size
        - yyscanner
      BBCount:         7
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_parser__init_buffer
        - event_filter_parser_alloc
        - i_fatal
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1627,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1628,3'
              BranchSideFuncs:
                - event_filter_parser_alloc
                - i_fatal
                - event_filter_parser__init_buffer
            - BranchSide:      'event-filter-lexer.c:1630,19'
              BranchSideFuncs:
                - event_filter_parser_alloc
                - i_fatal
                - event_filter_parser__init_buffer
        - Branch String:   'event-filter-lexer.c:1636,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1637,3'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
            - BranchSide:      'event-filter-lexer.c:1639,2'
              BranchSideFuncs:
                - event_filter_parser__init_buffer
      Callsites:
        - Src:             'event-filter-lexer.c:1626,24'
          Dst:             event_filter_parser_alloc
        - Src:             'event-filter-lexer.c:1628,3'
          Dst:             i_fatal
        - Src:             'event-filter-lexer.c:1635,26'
          Dst:             event_filter_parser_alloc
        - Src:             'event-filter-lexer.c:1637,3'
          Dst:             i_fatal
        - Src:             'event-filter-lexer.c:1641,2'
          Dst:             event_filter_parser__init_buffer
    - functionName:    yy_get_next_buffer
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1277
      functionLinenumberEnd: 1411
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         42
      ICount:          551
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - event_filter_parser_input_proc
        - event_filter_parser_realloc
        - event_filter_parser_restart
        - i_fatal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1284,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1285,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1288,7'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - i_fatal
                - event_filter_parser_realloc
        - Branch String:   'event-filter-lexer.c:1288,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1290,8'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1310,26'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - i_fatal
                - event_filter_parser_realloc
        - Branch String:   'event-filter-lexer.c:1290,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1295,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1303,4'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1312,2'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1313,23'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - i_fatal
                - event_filter_parser_realloc
            - BranchSide:      'event-filter-lexer.c:1315,7'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - i_fatal
                - event_filter_parser_realloc
        - Branch String:   'event-filter-lexer.c:1315,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1319,42'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
            - BranchSide:      'event-filter-lexer.c:1324,4'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - i_fatal
                - event_filter_parser_realloc
        - Branch String:   'event-filter-lexer.c:1326,3'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1330,24'
              BranchSideFuncs:
                - i_fatal
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - event_filter_parser_realloc
            - BranchSide:      'event-filter-lexer.c:1364,8'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
        - Branch String:   'event-filter-lexer.c:1335,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1337,20'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
            - BranchSide:      'event-filter-lexer.c:1351,5'
              BranchSideFuncs:
                - i_fatal
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - event_filter_parser_realloc
        - Branch String:   'event-filter-lexer.c:1339,10'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1340,24'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
            - BranchSide:      'event-filter-lexer.c:1342,6'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
        - Branch String:   'event-filter-lexer.c:1353,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1354,5'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - i_fatal
                - event_filter_parser_realloc
            - BranchSide:      'event-filter-lexer.c:1357,23'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
                - i_fatal
                - event_filter_parser_realloc
        - Branch String:   'event-filter-lexer.c:1364,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1365,16'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
            - BranchSide:      'event-filter-lexer.c:1368,3'
              BranchSideFuncs:
                - event_filter_parser_input_proc
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
        - Branch String:   'event-filter-lexer.c:1374,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1376,8'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
                - event_filter_parser_restart
            - BranchSide:      'event-filter-lexer.c:1391,11'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1376,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1378,12'
              BranchSideFuncs:
                - event_filter_parser_restart
                - event_filter_parser_realloc
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1384,12'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1393,6'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1395,18'
              BranchSideFuncs:
                - event_filter_parser_realloc
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1404,21'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1398,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1399,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1401,50'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-filter-lexer.c:1285,3'
          Dst:             i_fatal
        - Src:             'event-filter-lexer.c:1346,6'
          Dst:             event_filter_parser_realloc
        - Src:             'event-filter-lexer.c:1354,5'
          Dst:             i_fatal
        - Src:             'event-filter-lexer.c:1368,3'
          Dst:             event_filter_parser_input_proc
        - Src:             'event-filter-lexer.c:1379,4'
          Dst:             event_filter_parser_restart
        - Src:             'event-filter-lexer.c:1396,50'
          Dst:             event_filter_parser_realloc
        - Src:             'event-filter-lexer.c:1399,4'
          Dst:             i_fatal
    - functionName:    yy_try_NUL_trans
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1449
      functionLinenumberEnd: 1470
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - yy_current_state
        - yyscanner
      BBCount:         13
      ICount:          122
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1455,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1457,34'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1460,2'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1460,2'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1462,35'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1466,36'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1463,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1460,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1464,19'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1470,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1470,9'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1470,25'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    yy_get_previous_state
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1416
      functionLinenumberEnd: 1440
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyscanner
      BBCount:         17
      ICount:          145
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:1423,2'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1425,20'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1440,9'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1425,19'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1425,34'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1425,18'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1426,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1428,35'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1431,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1431,3'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1433,36'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1437,37'
              BranchSideFuncs: []
        - Branch String:   'event-filter-lexer.c:1434,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1431,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1435,20'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    event_filter_parser_lex
      functionSourceFile: '/src/dovecot/src/lib/event-filter-lexer.c'
      linkageType:     externalLinkage
      functionLinenumber: 934
      functionLinenumberEnd: 1267
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yylval_param
        - yyscanner
      BBCount:         79
      ICount:          721
      EdgeCount:       91
      CyclomaticComplexity: 14
      functionsReached:
        - event_filter_parser__create_buffer
        - event_filter_parser__load_buffer_state
        - event_filter_parser_ensure_buffer_stack
        - fwrite
        - i_fatal
        - str_append
        - str_c
        - t_str_new
        - t_strdup
        - yy_get_next_buffer
        - yy_get_previous_state
        - yy_try_NUL_trans
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-lexer.c:942,7'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:46,12'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:944,3'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:950,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:951,4'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:953,10'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:953,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:954,11'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:956,10'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:956,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:957,12'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:959,10'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:959,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:959,10'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:959,8'
              BranchSideFuncs:
                - event_filter_parser_ensure_buffer_stack
                - event_filter_parser__create_buffer
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:959,10'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:960,27'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:965,25'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:959,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:960,27'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:965,25'
              BranchSideFuncs:
                - event_filter_parser__load_buffer_state
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:993,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:995,36'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:998,4'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:998,4'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1000,37'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1004,38'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1001,10'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:998,4'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1002,21'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1006,4'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:992,25'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1008,11'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1018,3'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:49,6'
              BranchSideFuncs:
                - t_str_new
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:54,26'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'event-filter-lexer.l:59,14'
              BranchSideFuncs:
                - str_append.5298
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:60,14'
              BranchSideFuncs:
                - str_append.5298
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:61,14'
              BranchSideFuncs:
                - str_append.5298
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:62,14'
              BranchSideFuncs:
                - str_append.5298
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:64,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:65,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:66,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:67,11'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:68,26'
              BranchSideFuncs:
                - t_strdup
            - BranchSide:      'event-filter-lexer.l:70,2'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:94,30'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.l:96,1'
              BranchSideFuncs:
                - fwrite
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1022,13'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1136,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1136,2'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-lexer.c:1141,42'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
            - BranchSide:      'event-filter-lexer.c:1262,3'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'event-filter-lexer.l:96,1'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.l:96,1'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.l:97,2'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1147,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1158,22'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
            - BranchSide:      'event-filter-lexer.c:1170,8'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
        - Branch String:   'event-filter-lexer.c:1170,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1174,22'
              BranchSideFuncs:
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1207,37'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
                - yy_get_previous_state.5296
        - Branch String:   'event-filter-lexer.c:1191,9'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1194,15'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1201,13'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
        - Branch String:   'event-filter-lexer.c:1207,8'
          Branch Sides:
            - BranchSide:      'event-filter-lexer.c:1211,5'
              BranchSideFuncs:
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1240,6'
              BranchSideFuncs:
                - yy_get_previous_state.5296
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
            - BranchSide:      'event-filter-lexer.c:1250,6'
              BranchSideFuncs:
                - yy_get_previous_state.5296
                - yy_get_next_buffer.5285
                - yy_get_previous_state.5296
                - yy_get_previous_state.5296
                - yy_try_NUL_trans.5289
                - fwrite
                - t_strdup
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_append.5298
                - str_c
                - t_str_new
                - i_fatal
      Callsites:
        - Src:             'event-filter-lexer.c:960,4'
          Dst:             event_filter_parser_ensure_buffer_stack
        - Src:             'event-filter-lexer.c:962,5'
          Dst:             event_filter_parser__create_buffer
        - Src:             'event-filter-lexer.c:965,3'
          Dst:             event_filter_parser__load_buffer_state
        - Src:             'event-filter-lexer.l:51,16'
          Dst:             t_str_new
        - Src:             'event-filter-lexer.l:54,20'
          Dst:             str_c
        - Src:             'event-filter-lexer.l:59,3'
          Dst:             str_append
        - Src:             'event-filter-lexer.l:60,3'
          Dst:             str_append
        - Src:             'event-filter-lexer.l:61,3'
          Dst:             str_append
        - Src:             'event-filter-lexer.l:62,3'
          Dst:             str_append
        - Src:             'event-filter-lexer.l:68,17'
          Dst:             t_strdup
        - Src:             'event-filter-lexer.l:96,1'
          Dst:             fwrite
        - Src:             'event-filter-lexer.c:1176,23'
          Dst:             yy_get_previous_state
        - Src:             'event-filter-lexer.c:1187,20'
          Dst:             yy_try_NUL_trans
        - Src:             'event-filter-lexer.c:1207,17'
          Dst:             yy_get_next_buffer
        - Src:             'event-filter-lexer.c:1242,24'
          Dst:             yy_get_previous_state
        - Src:             'event-filter-lexer.c:1252,24'
          Dst:             yy_get_previous_state
        - Src:             'event-filter-lexer.c:1262,3'
          Dst:             i_fatal
    - functionName:    yystpcpy
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1016
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yydest
        - yysrc
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-parser.c:1020,3'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1021,5'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.c:1023,10'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    yytnamerr
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1038
      functionLinenumberEnd: 1076
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yyres
        - yystr
      BBCount:         28
      ICount:          143
      EdgeCount:       32
      CyclomaticComplexity: 6
      functionsReached:
        - strlen
        - yystpcpy
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-filter-parser.c:1039,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1041,19'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1072,7'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
        - Branch String:   'event-filter-parser.c:1045,9'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1049,13'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1049,13'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1052,18'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1059,17'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1065,17'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1052,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1053,15'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1055,15'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
        - Branch String:   'event-filter-parser.c:1059,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1060,29'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1061,16'
              BranchSideFuncs:
                - strlen
                - yystpcpy.5325
        - Branch String:   'event-filter-parser.c:1065,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1066,15'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.c:1067,20'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1072,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1073,22'
              BranchSideFuncs:
                - yystpcpy.5325
            - BranchSide:      'event-filter-parser.c:1075,12'
              BranchSideFuncs:
                - strlen
      Callsites:
        - Src:             'event-filter-parser.c:1073,12'
          Dst:             yystpcpy
        - Src:             'event-filter-parser.c:1075,12'
          Dst:             strlen
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    yydestruct
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1228
      functionLinenumberEnd: 1238
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - yymsg
        - yytype
        - yyvaluep
        - state
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'event-filter-parser.c:1231,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1231,7'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.c:1232,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    yysyntax_error
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1219
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - yymsg_alloc
        - yymsg
        - yyssp
        - yytoken
      BBCount:         68
      ICount:          416
      EdgeCount:       86
      CyclomaticComplexity: 20
      functionsReached:
        - strlen
        - yytnamerr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-filter-parser.c:1125,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1127,26'
              BranchSideFuncs:
                - yytnamerr.5326
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1165,11'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1131,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1136,26'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1163,5'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1136,26'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1136,37'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1136,15'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1139,24'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1139,49'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1139,15'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1142,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1143,25'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1162,9'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1143,43'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1143,46'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1144,21'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1143,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1144,21'
              BranchSideFuncs:
                - yytnamerr.5326
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1146,21'
              BranchSideFuncs:
                - yytnamerr.5326
                - strlen
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1146,21'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1148,29'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1152,44'
              BranchSideFuncs:
                - yytnamerr.5326
                - strlen
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1156,41'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1156,44'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1159,21'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1156,23'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1157,30'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1159,21'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1165,3'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1166,5'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1172,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1173,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1174,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1175,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1176,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1177,7'
              BranchSideFuncs:
                - strlen
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1185,27'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1185,30'
              BranchSideFuncs:
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1188,7'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1185,9'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1186,16'
              BranchSideFuncs:
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1188,7'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1191,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1193,26'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.c:1204,18'
              BranchSideFuncs:
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1195,14'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1195,18'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.c:1196,10'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1194,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1196,10'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.c:1197,7'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1206,5'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1207,12'
              BranchSideFuncs:
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1218,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.c:1207,23'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1207,26'
              BranchSideFuncs:
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1214,11'
              BranchSideFuncs:
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1207,45'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1207,48'
              BranchSideFuncs:
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1214,11'
              BranchSideFuncs:
                - yytnamerr.5326
        - Branch String:   'event-filter-parser.c:1207,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1209,29'
              BranchSideFuncs:
                - yytnamerr.5326
            - BranchSide:      'event-filter-parser.c:1214,11'
              BranchSideFuncs:
                - yytnamerr.5326
      Callsites:
        - Src:             'event-filter-parser.c:1128,29'
          Dst:             yytnamerr
        - Src:             'event-filter-parser.c:1155,32'
          Dst:             yytnamerr
        - Src:             'event-filter-parser.c:1184,37'
          Dst:             strlen
        - Src:             'event-filter-parser.c:1209,18'
          Dst:             yytnamerr
    - functionName:    key_value
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - state
        - a
        - b
        - op
      BBCount:         59
      ICount:          448
      EdgeCount:       72
      CyclomaticComplexity: 15
      functionsReached:
        - event_category_find_registered
        - event_filter_category_to_log_type
        - i_unreached
        - malloc_multiply_check
        - net_parse_range
        - p_malloc
        - p_strdup
        - str_parse_get_interval_msecs
        - str_parse_get_size
        - str_to_intmax
        - str_unescape
        - strcmp
        - strlen
        - strspn
        - toupper
        - wildcard_is_escaped_literal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-parser.y:41,6'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:42,8'
              BranchSideFuncs:
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
            - BranchSide:      'event-filter-parser.y:43,18'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
        - Branch String:   'event-filter-parser.y:43,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:44,8'
              BranchSideFuncs:
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
            - BranchSide:      'event-filter-parser.y:45,18'
              BranchSideFuncs:
                - strcmp
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
        - Branch String:   'event-filter-parser.y:45,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:46,8'
              BranchSideFuncs:
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
            - BranchSide:      'event-filter-parser.y:48,8'
              BranchSideFuncs:
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
        - Branch String:   'event-filter-parser.y:51,60'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:52,7'
              BranchSideFuncs:
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
            - BranchSide:      'event-filter-parser.y:57,9'
              BranchSideFuncs:
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
        - Branch String:   'event-filter-parser.y:51,6'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:53,3'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.y:57,9'
              BranchSideFuncs:
                - malloc_multiply_check.5327
                - p_malloc.5329
                - i_unreached
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
                - p_strdup
                - str_unescape
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
                - i_unreached
        - Branch String:   'event-filter-parser.y:62,2'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:64,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter-parser.y:66,35'
              BranchSideFuncs:
                - wildcard_is_escaped_literal
                - p_strdup
                - p_strdup
                - str_unescape
            - BranchSide:      'event-filter-parser.y:75,49'
              BranchSideFuncs:
                - p_strdup
                - str_unescape
            - BranchSide:      'event-filter-parser.y:79,42'
              BranchSideFuncs:
                - event_filter_category_to_log_type
                - p_strdup
                - str_unescape
                - event_category_find_registered
            - BranchSide:      'event-filter-parser.y:85,30'
              BranchSideFuncs:
                - p_strdup
                - str_to_intmax
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
            - BranchSide:      'event-filter-parser.y:152,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter-parser.y:152,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter-parser.y:152,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'event-filter-parser.y:155,9'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.y:66,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:67,4'
              BranchSideFuncs:
                - p_strdup
                - str_unescape
            - BranchSide:      'event-filter-parser.y:70,37'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'event-filter-parser.y:79,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:80,48'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.y:83,3'
              BranchSideFuncs: []
        - Branch String:   'event-filter-parser.y:89,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:91,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.y:93,30'
              BranchSideFuncs:
                - net_parse_range
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
        - Branch String:   'event-filter-parser.y:93,14'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:96,4'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.y:106,33'
              BranchSideFuncs:
                - str_parse_get_size
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - strlen
                - toupper
                - p_strdup
        - Branch String:   'event-filter-parser.y:107,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:107,20'
              BranchSideFuncs:
                - strlen
                - toupper
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
                - p_strdup
            - BranchSide:      'event-filter-parser.y:116,8'
              BranchSideFuncs:
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
        - Branch String:   'event-filter-parser.y:107,8'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:111,5'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'event-filter-parser.y:116,8'
              BranchSideFuncs:
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
        - Branch String:   'event-filter-parser.y:116,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:116,20'
              BranchSideFuncs:
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
            - BranchSide:      'event-filter-parser.y:128,39'
              BranchSideFuncs:
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
        - Branch String:   'event-filter-parser.y:116,8'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:117,43'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.y:128,39'
              BranchSideFuncs:
                - str_parse_get_interval_msecs
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
        - Branch String:   'event-filter-parser.y:129,8'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:130,43'
              BranchSideFuncs: []
            - BranchSide:      'event-filter-parser.y:136,29'
              BranchSideFuncs:
                - p_strdup
                - wildcard_is_escaped_literal
                - strspn
                - strlen
                - str_unescape
        - Branch String:   'event-filter-parser.y:137,8'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:138,5'
              BranchSideFuncs:
                - str_unescape
            - BranchSide:      'event-filter-parser.y:140,22'
              BranchSideFuncs:
                - strspn
                - strlen
      Callsites:
        - Src:             'event-filter-parser.y:41,6'
          Dst:             strcmp
        - Src:             'event-filter-parser.y:43,11'
          Dst:             strcmp
        - Src:             'event-filter-parser.y:45,11'
          Dst:             strcmp
        - Src:             'event-filter-parser.y:57,9'
          Dst:             malloc_multiply_check
        - Src:             'event-filter-parser.y:57,9'
          Dst:             p_malloc
        - Src:             'event-filter-parser.y:64,3'
          Dst:             i_unreached
        - Src:             'event-filter-parser.y:66,7'
          Dst:             wildcard_is_escaped_literal
        - Src:             'event-filter-parser.y:68,41'
          Dst:             p_strdup
        - Src:             'event-filter-parser.y:68,28'
          Dst:             str_unescape
        - Src:             'event-filter-parser.y:70,28'
          Dst:             p_strdup
        - Src:             'event-filter-parser.y:75,40'
          Dst:             p_strdup
        - Src:             'event-filter-parser.y:75,27'
          Dst:             str_unescape
        - Src:             'event-filter-parser.y:79,8'
          Dst:             event_filter_category_to_log_type
        - Src:             'event-filter-parser.y:80,39'
          Dst:             p_strdup
        - Src:             'event-filter-parser.y:80,26'
          Dst:             str_unescape
        - Src:             'event-filter-parser.y:81,25'
          Dst:             event_category_find_registered
        - Src:             'event-filter-parser.y:85,21'
          Dst:             p_strdup
        - Src:             'event-filter-parser.y:89,7'
          Dst:             str_to_intmax
        - Src:             'event-filter-parser.y:93,14'
          Dst:             net_parse_range
        - Src:             'event-filter-parser.y:106,14'
          Dst:             str_parse_get_size
        - Src:             'event-filter-parser.y:107,20'
          Dst:             strlen
        - Src:             'event-filter-parser.y:107,20'
          Dst:             toupper
        - Src:             'event-filter-parser.y:112,29'
          Dst:             p_strdup
        - Src:             'event-filter-parser.y:128,10'
          Dst:             str_parse_get_interval_msecs
        - Src:             'event-filter-parser.y:136,20'
          Dst:             p_strdup
        - Src:             'event-filter-parser.y:137,8'
          Dst:             wildcard_is_escaped_literal
        - Src:             'event-filter-parser.y:139,5'
          Dst:             str_unescape
        - Src:             'event-filter-parser.y:140,15'
          Dst:             strspn
        - Src:             'event-filter-parser.y:140,44'
          Dst:             strlen
        - Src:             'event-filter-parser.y:152,3'
          Dst:             i_unreached
    - functionName:    strspn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    logic
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - state
        - a
        - b
        - op
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter-parser.y:165,9'
          Dst:             malloc_multiply_check
        - Src:             'event-filter-parser.y:165,9'
          Dst:             p_malloc
    - functionName:    event_filter_parser_parse
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.c'
      linkageType:     externalLinkage
      functionLinenumber: 1249
      functionLinenumberEnd: 1861
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - state
      BBCount:         164
      ICount:          1080
      EdgeCount:       209
      CyclomaticComplexity: 47
      functionsReached:
        - event_filter_parser_error
        - event_filter_parser_lex
        - key_value
        - logic
        - str_unescape
        - t_strdup_noconst
        - yydestruct
        - yysyntax_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-filter-parser.c:1339,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1345,28'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - free
            - BranchSide:      'event-filter-parser.c:1402,7'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
        - Branch String:   'event-filter-parser.c:1368,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1369,9'
              BranchSideFuncs:
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1370,19'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - free
        - Branch String:   'event-filter-parser.c:1371,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1372,21'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - free
            - BranchSide:      'event-filter-parser.c:1375,29'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - free
        - Branch String:   'event-filter-parser.c:1379,13'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1380,11'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - free
            - BranchSide:      'event-filter-parser.c:1381,9'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - free
        - Branch String:   'event-filter-parser.c:1384,13'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1385,25'
              BranchSideFuncs:
                - free
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
            - BranchSide:      'event-filter-parser.c:1389,15'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
        - Branch String:   'event-filter-parser.c:1397,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1398,9'
              BranchSideFuncs:
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1399,5'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
        - Branch String:   'event-filter-parser.c:1402,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1403,5'
              BranchSideFuncs:
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1405,3'
              BranchSideFuncs:
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
        - Branch String:   'event-filter-parser.c:1417,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1418,5'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1423,7'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
                - event_filter_parser_lex
        - Branch String:   'event-filter-parser.c:1423,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1426,32'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1429,7'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1429,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1431,24'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1436,17'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1436,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1436,17'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1436,15'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1436,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1436,15'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1436,15'
              BranchSideFuncs:
                - event_filter_parser_lex
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1443,15'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1443,27'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1444,5'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
        - Branch String:   'event-filter-parser.c:1443,31'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1443,42'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1444,5'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
        - Branch String:   'event-filter-parser.c:1443,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1444,5'
              BranchSideFuncs:
                - event_filter_parser_lex
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - malloc
                - event_filter_parser_error
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1445,17'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1446,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1450,14'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
            - BranchSide:      'event-filter-parser.c:1456,7'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1456,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1457,16'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1461,13'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1476,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1477,5'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1478,3'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
        - Branch String:   'event-filter-parser.c:1500,3'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:198,52'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:199,35'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:202,56'
              BranchSideFuncs:
                - logic
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:203,56'
              BranchSideFuncs:
                - logic
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:204,56'
              BranchSideFuncs:
                - logic
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:205,51'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:206,51'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:210,31'
              BranchSideFuncs:
                - key_value
                - t_strdup_noconst
                - str_unescape
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - event_filter_parser_error
            - BranchSide:      'event-filter-parser.y:220,50'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:221,80'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:224,50'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:225,50'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:226,47'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:227,47'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:228,47'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:231,46'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:232,46'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:233,46'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:234,46'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.y:235,46'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1633,16'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.y:211,10'
          Branch Sides:
            - BranchSide:      'event-filter-parser.y:212,15'
              BranchSideFuncs:
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1556,5'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1660,25'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1660,28'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1662,28'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1660,42'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1660,53'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1662,28'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1660,16'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1661,26'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1662,28'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1674,13'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1674,11'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1674,43'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
        - Branch String:   'event-filter-parser.c:1674,43'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1674,43'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1674,13'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
        - Branch String:   'event-filter-parser.c:1674,43'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1674,13'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
            - BranchSide:      'event-filter-parser.c:1674,13'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
        - Branch String:   'event-filter-parser.c:1677,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1679,7'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1718,7'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - yydestruct.5331
        - Branch String:   'event-filter-parser.c:1689,13'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1690,20'
              BranchSideFuncs:
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1691,18'
              BranchSideFuncs:
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - malloc
                - yysyntax_error.5333
                - free
        - Branch String:   'event-filter-parser.c:1693,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1694,29'
              BranchSideFuncs:
                - free
                - malloc
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - yysyntax_error.5333
            - BranchSide:      'event-filter-parser.c:1695,21'
              BranchSideFuncs:
                - malloc
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
                - yysyntax_error.5333
        - Branch String:   'event-filter-parser.c:1696,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1698,25'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - malloc
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1704,41'
              BranchSideFuncs:
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - malloc
                - free
                - event_filter_parser_lex
                - malloc
                - event_filter_parser_error
                - free
                - yydestruct.5331
        - Branch String:   'event-filter-parser.c:1709,13'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1710,11'
              BranchSideFuncs:
                - event_filter_parser_error
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1714,5'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
                - yydestruct.5331
        - Branch String:   'event-filter-parser.c:1718,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1723,11'
              BranchSideFuncs:
                - yydestruct.5331
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1739,3'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1723,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1726,15'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1732,23'
              BranchSideFuncs:
                - yydestruct.5331
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1726,15'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1727,13'
              BranchSideFuncs:
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1728,9'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1769,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1771,15'
              BranchSideFuncs:
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1781,11'
              BranchSideFuncs:
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1772,24'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1772,27'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1778,9'
              BranchSideFuncs:
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1772,41'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1772,52'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1778,9'
              BranchSideFuncs:
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1772,15'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1774,29'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1778,9'
              BranchSideFuncs:
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1775,19'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1776,17'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
            - BranchSide:      'event-filter-parser.c:1777,13'
              BranchSideFuncs:
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1781,11'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1782,9'
              BranchSideFuncs:
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1786,26'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
                - yydestruct.5331
                - t_strdup_noconst
                - str_unescape
                - key_value
                - event_filter_parser_error
                - logic
                - logic
                - logic
                - yysyntax_error.5333
                - event_filter_parser_error
                - yydestruct.5331
                - event_filter_parser_error
                - malloc
                - yysyntax_error.5333
                - free
                - event_filter_parser_lex
                - malloc
                - free
        - Branch String:   'event-filter-parser.c:1835,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1839,17'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1845,3'
              BranchSideFuncs:
                - free
                - free
                - yydestruct.5331
        - Branch String:   'event-filter-parser.c:1839,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1839,17'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1839,15'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
        - Branch String:   'event-filter-parser.c:1839,17'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1839,15'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
            - BranchSide:      'event-filter-parser.c:1839,15'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
                - yydestruct.5331
        - Branch String:   'event-filter-parser.c:1847,3'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1850,28'
              BranchSideFuncs:
                - yydestruct.5331
                - free
                - free
            - BranchSide:      'event-filter-parser.c:1854,7'
              BranchSideFuncs:
                - free
                - free
        - Branch String:   'event-filter-parser.c:1854,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1855,19'
              BranchSideFuncs:
                - free
                - free
            - BranchSide:      'event-filter-parser.c:1858,7'
              BranchSideFuncs:
                - free
        - Branch String:   'event-filter-parser.c:1858,7'
          Branch Sides:
            - BranchSide:      'event-filter-parser.c:1858,7'
              BranchSideFuncs:
                - free
            - BranchSide:      'event-filter-parser.c:1859,19'
              BranchSideFuncs:
                - free
      Callsites:
        - Src:             'event-filter-parser.c:1426,16'
          Dst:             event_filter_parser_lex
        - Src:             'event-filter-parser.y:202,50'
          Dst:             logic
        - Src:             'event-filter-parser.y:203,50'
          Dst:             logic
        - Src:             'event-filter-parser.y:204,50'
          Dst:             logic
        - Src:             'event-filter-parser.y:210,21'
          Dst:             key_value
        - Src:             'event-filter-parser.y:212,7'
          Dst:             event_filter_parser_error
        - Src:             'event-filter-parser.y:221,62'
          Dst:             t_strdup_noconst
        - Src:             'event-filter-parser.y:221,49'
          Dst:             str_unescape
        - Src:             'event-filter-parser.c:1688,33'
          Dst:             yysyntax_error
        - Src:             'event-filter-parser.c:1704,41'
          Dst:             yysyntax_error
        - Src:             'event-filter-parser.c:1708,9'
          Dst:             event_filter_parser_error
        - Src:             'event-filter-parser.c:1731,11'
          Dst:             yydestruct
        - Src:             'event-filter-parser.c:1785,7'
          Dst:             yydestruct
        - Src:             'event-filter-parser.c:1825,3'
          Dst:             event_filter_parser_error
        - Src:             'event-filter-parser.c:1840,7'
          Dst:             yydestruct
        - Src:             'event-filter-parser.c:1849,7'
          Dst:             yydestruct
    - functionName:    event_filter_parser_error
      functionSourceFile: '/src/dovecot/src/lib/event-filter-parser.y'
      linkageType:     externalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - scan
        - e
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_strdup_printf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'event-filter-parser.y:31,17'
          Dst:             t_strdup_printf
    - functionName:    str_append_str
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:61,2'
          Dst:             buffer_append
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   './str.h:90,6'
          Branch Sides:
            - BranchSide:      './str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      './str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             './str.h:90,6'
          Dst:             str_len
        - Src:             './str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_insert
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - pos
        - cstr
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:72,32'
          Dst:             strlen
        - Src:             './str.h:72,2'
          Dst:             buffer_insert
    - functionName:    event_get_log_message_str_out
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - glmctx
        - fmt
        - args
      BBCount:         17
      ICount:          120
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - str_append
        - str_append_str
        - str_vprintfa
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-log.c:142,27'
          Branch Sides:
            - BranchSide:      'event-log.c:142,30'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:143,3'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:142,6'
          Branch Sides:
            - BranchSide:      'event-log.c:143,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:146,6'
              BranchSideFuncs:
                - str_append_str.5455
                - str_vprintfa
                - str_append.5459
                - str_append.5459
        - Branch String:   'event-log.c:146,38'
          Branch Sides:
            - BranchSide:      'event-log.c:146,42'
              BranchSideFuncs:
                - str_append.5459
                - str_append_str.5455
                - str_vprintfa
                - str_append.5459
            - BranchSide:      'event-log.c:148,17'
              BranchSideFuncs:
                - str_append_str.5455
                - str_vprintfa
                - str_append.5459
        - Branch String:   'event-log.c:146,6'
          Branch Sides:
            - BranchSide:      'event-log.c:147,14'
              BranchSideFuncs:
                - str_append_str.5455
                - str_vprintfa
                - str_append.5459
            - BranchSide:      'event-log.c:148,17'
              BranchSideFuncs:
                - str_append_str.5455
                - str_vprintfa
                - str_append.5459
        - Branch String:   'event-log.c:150,6'
          Branch Sides:
            - BranchSide:      'event-log.c:152,14'
              BranchSideFuncs:
                - str_append.5459
            - BranchSide:      'event-log.c:157,3'
              BranchSideFuncs:
                - str_vprintfa
      Callsites:
        - Src:             'event-log.c:147,3'
          Dst:             str_append
        - Src:             'event-log.c:148,2'
          Dst:             str_append_str
        - Src:             'event-log.c:152,3'
          Dst:             str_append
        - Src:             'event-log.c:158,3'
          Dst:             str_vprintfa
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    event_get_log_message
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - glmctx
        - prefixes_dropped
        - fmt
        - args
      BBCount:         63
      ICount:          411
      EdgeCount:       84
      CyclomaticComplexity: 23
      functionsReached:
        - event_get_log_message
        - event_get_log_message_str_out
        - str_append
        - str_c
        - str_insert
        - str_len
        - str_truncate
        - str_vprintfa
        - strlen
        - t_strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-log.c:177,6'
          Branch Sides:
            - BranchSide:      'event-log.c:179,33'
              BranchSideFuncs:
                - event_get_log_message_str_out
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5457
                - str_append.5459
                - str_truncate.5456
                - t_strdup
                - str_vprintfa
                - str_insert.5458
            - BranchSide:      'event-log.c:190,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5457
                - str_append.5459
                - str_truncate.5456
                - t_strdup
                - str_vprintfa
        - Branch String:   'event-log.c:181,7'
          Branch Sides:
            - BranchSide:      'event-log.c:182,15'
              BranchSideFuncs:
                - str_insert.5458
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5457
                - str_append.5459
                - str_truncate.5456
                - t_strdup
                - str_vprintfa
            - BranchSide:      'event-log.c:186,2'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - str_c
                - str_len.5457
                - str_append.5459
                - str_truncate.5456
                - t_strdup
                - str_vprintfa
        - Branch String:   'event-log.c:190,6'
          Branch Sides:
            - BranchSide:      'event-log.c:195,34'
              BranchSideFuncs:
                - str_c
                - str_len.5457
                - str_append.5459
                - str_truncate.5456
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - t_strdup
                - str_vprintfa
            - BranchSide:      'event-log.c:223,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
        - Branch String:   'event-log.c:196,7'
          Branch Sides:
            - BranchSide:      'event-log.c:197,17'
              BranchSideFuncs:
                - str_vprintfa
                - str_truncate.5456
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - t_strdup
            - BranchSide:      'event-log.c:199,22'
              BranchSideFuncs:
                - str_len.5457
                - str_append.5459
                - str_truncate.5456
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - t_strdup
        - Branch String:   'event-log.c:199,14'
          Branch Sides:
            - BranchSide:      'event-log.c:200,17'
              BranchSideFuncs:
                - str_truncate.5456
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - t_strdup
            - BranchSide:      'event-log.c:202,15'
              BranchSideFuncs:
                - str_append.5459
                - str_truncate.5456
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
                - t_strdup
        - Branch String:   'event-log.c:210,7'
          Branch Sides:
            - BranchSide:      'event-log.c:214,31'
              BranchSideFuncs:
                - t_strdup
                - str_truncate.5456
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
            - BranchSide:      'event-log.c:219,16'
              BranchSideFuncs:
                - str_truncate.5456
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
        - Branch String:   'event-log.c:223,6'
          Branch Sides:
            - BranchSide:      'event-log.c:224,12'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
            - BranchSide:      'event-log.c:227,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
                - strlen
                - event_get_log_message_str_out
        - Branch String:   'event-log.c:227,6'
          Branch Sides:
            - BranchSide:      'event-log.c:229,3'
              BranchSideFuncs:
                - strlen
                - event_get_log_message_str_out
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
            - BranchSide:      'event-log.c:233,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
        - Branch String:   'event-log.c:230,23'
          Branch Sides:
            - BranchSide:      'event-log.c:230,22'
              BranchSideFuncs:
                - event_get_log_message_str_out
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
            - BranchSide:      'event-log.c:230,51'
              BranchSideFuncs:
                - strlen
                - event_get_log_message_str_out
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
        - Branch String:   'event-log.c:233,6'
          Branch Sides:
            - BranchSide:      'event-log.c:234,7'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
                - str_insert.5458
            - BranchSide:      'event-log.c:241,6'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
        - Branch String:   'event-log.c:234,33'
          Branch Sides:
            - BranchSide:      'event-log.c:234,36'
              BranchSideFuncs:
                - str_insert.5458
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
            - BranchSide:      'event-log.c:235,15'
              BranchSideFuncs:
                - str_insert.5458
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
        - Branch String:   'event-log.c:234,7'
          Branch Sides:
            - BranchSide:      'event-log.c:235,15'
              BranchSideFuncs:
                - str_insert.5458
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
            - BranchSide:      'event-log.c:237,14'
              BranchSideFuncs:
                - event_get_log_message
                - event_get_log_message_str_out
                - str_insert.5458
        - Branch String:   'event-log.c:241,6'
          Branch Sides:
            - BranchSide:      'event-log.c:242,33'
              BranchSideFuncs:
                - event_get_log_message_str_out
                - str_insert.5458
            - BranchSide:      'event-log.c:250,14'
              BranchSideFuncs:
                - event_get_log_message
        - Branch String:   'event-log.c:243,34'
          Branch Sides:
            - BranchSide:      'event-log.c:244,7'
              BranchSideFuncs:
                - str_insert.5458
            - BranchSide:      'event-log.c:250,2'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:244,40'
          Branch Sides:
            - BranchSide:      'event-log.c:245,8'
              BranchSideFuncs:
                - str_insert.5458
            - BranchSide:      'event-log.c:250,2'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:243,7'
          Branch Sides:
            - BranchSide:      'event-log.c:246,15'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:250,2'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:251,24'
          Branch Sides:
            - BranchSide:      'event-log.c:251,28'
              BranchSideFuncs:
                - event_get_log_message
            - BranchSide:      'event-log.c:252,23'
              BranchSideFuncs:
                - event_get_log_message
        - Branch String:   'event-log.c:253,7'
          Branch Sides:
            - BranchSide:      'event-log.c:255,8'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:256,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:179,3'
          Dst:             event_get_log_message_str_out
        - Src:             'event-log.c:182,4'
          Dst:             str_insert
        - Src:             'event-log.c:195,28'
          Dst:             str_c
        - Src:             'event-log.c:197,4'
          Dst:             str_vprintfa
        - Src:             'event-log.c:199,14'
          Dst:             str_len
        - Src:             'event-log.c:202,4'
          Dst:             str_append
        - Src:             'event-log.c:214,22'
          Dst:             t_strdup
        - Src:             'event-log.c:219,3'
          Dst:             str_truncate
        - Src:             'event-log.c:230,44'
          Dst:             strlen
        - Src:             'event-log.c:231,3'
          Dst:             event_get_log_message_str_out
        - Src:             'event-log.c:235,4'
          Dst:             str_insert
        - Src:             'event-log.c:242,3'
          Dst:             event_get_log_message_str_out
        - Src:             'event-log.c:246,4'
          Dst:             str_insert
        - Src:             'event-log.c:253,7'
          Dst:             event_get_log_message
    - functionName:    event_get_global_core_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_unset_global_core_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-log.c:486,2'
          Branch Sides:
            - BranchSide:      'event-log.c:486,2'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'event-log.c:486,2'
              BranchSideFuncs:
                - event_filter_unref
      Callsites:
        - Src:             'event-log.c:486,2'
          Dst:             event_filter_unref
    - functionName:    event_set_global_core_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 472
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_ref
        - event_unset_global_core_log_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-log.c:473,2'
          Dst:             event_unset_global_core_log_filter
        - Src:             'event-log.c:475,2'
          Dst:             event_filter_ref
    - functionName:    event_get_global_debug_send_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_unset_global_debug_send_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-log.c:467,2'
          Branch Sides:
            - BranchSide:      'event-log.c:467,2'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'event-log.c:467,2'
              BranchSideFuncs:
                - event_filter_unref
      Callsites:
        - Src:             'event-log.c:467,2'
          Dst:             event_filter_unref
    - functionName:    event_set_global_debug_send_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_ref
        - event_unset_global_debug_send_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-log.c:454,2'
          Dst:             event_unset_global_debug_send_filter
        - Src:             'event-log.c:456,2'
          Dst:             event_filter_ref
    - functionName:    event_get_global_debug_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_unset_global_debug_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-log.c:448,2'
          Branch Sides:
            - BranchSide:      'event-log.c:448,2'
              BranchSideFuncs:
                - event_filter_unref
            - BranchSide:      'event-log.c:448,2'
              BranchSideFuncs:
                - event_filter_unref
      Callsites:
        - Src:             'event-log.c:448,2'
          Dst:             event_filter_unref
    - functionName:    event_set_global_debug_log_filter
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - filter
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_filter_ref
        - event_unset_global_debug_log_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-log.c:435,2'
          Dst:             event_unset_global_debug_log_filter
        - Src:             'event-log.c:437,2'
          Dst:             event_filter_ref
    - functionName:    event_set_forced_never_debug
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - event
        - force
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_unset_forced_debug
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_recalculate_debug_level
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-log.c:423,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_recalculate_debug_level
      functionSourceFile: '/src/dovecot/src/lib/./lib-event-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_set_forced_debug
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - event
        - force
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_recalculate_debug_level
      functionUses:    3
      BranchProfiles:
        - Branch String:   'event-log.c:414,6'
          Branch Sides:
            - BranchSide:      'event-log.c:414,6'
              BranchSideFuncs:
                - event_recalculate_debug_level
            - BranchSide:      'event-log.c:415,3'
              BranchSideFuncs:
                - event_recalculate_debug_level
      Callsites:
        - Src:             'event-log.c:416,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_logv_params
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - params
        - fmt
        - args
      BBCount:         40
      ICount:          248
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - event_filter_match_source
        - event_get_log_message
        - event_send
        - event_vsend
        - i_panic
        - str_append
        - str_c
        - str_vprintfa
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'event-log.c:344,2'
          Branch Sides:
            - BranchSide:      'event-log.c:344,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
                - event_filter_match_source
                - i_panic
            - BranchSide:      'event-log.c:344,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
                - event_filter_match_source
                - i_panic
        - Branch String:   'event-log.c:344,2'
          Branch Sides:
            - BranchSide:      'event-log.c:344,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-log.c:346,6'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
                - event_filter_match_source
        - Branch String:   'event-log.c:346,37'
          Branch Sides:
            - BranchSide:      'event-log.c:347,32'
              BranchSideFuncs:
                - event_filter_match_source
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
            - BranchSide:      'event-log.c:352,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:346,6'
          Branch Sides:
            - BranchSide:      'event-log.c:350,21'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
            - BranchSide:      'event-log.c:352,2'
              BranchSideFuncs:
                - t_str_new
                - event_get_log_message
                - event_vsend
                - abort
                - str_vprintfa
                - str_vprintfa
                - str_c
                - event_send
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:355,6'
          Branch Sides:
            - BranchSide:      'event-log.c:357,7'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
            - BranchSide:      'event-log.c:366,13'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:357,36'
          Branch Sides:
            - BranchSide:      'event-log.c:357,47'
              BranchSideFuncs:
                - str_vprintfa
                - event_vsend
                - abort
            - BranchSide:      'event-log.c:364,8'
              BranchSideFuncs:
                - event_vsend
                - abort
        - Branch String:   'event-log.c:357,7'
          Branch Sides:
            - BranchSide:      'event-log.c:360,4'
              BranchSideFuncs:
                - event_vsend
                - abort
            - BranchSide:      'event-log.c:364,8'
              BranchSideFuncs:
                - event_vsend
                - abort
        - Branch String:   'event-log.c:364,7'
          Branch Sides:
            - BranchSide:      'event-log.c:365,16'
              BranchSideFuncs:
                - abort
            - BranchSide:      'event-log.c:366,2'
              BranchSideFuncs:
                - abort
        - Branch String:   'event-log.c:366,13'
          Branch Sides:
            - BranchSide:      'event-log.c:368,2'
              BranchSideFuncs:
                - abort
            - BranchSide:      'event-log.c:368,20'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5459
                - str_c
                - event_vsend
                - event_send
        - Branch String:   'event-log.c:368,13'
          Branch Sides:
            - BranchSide:      'event-log.c:370,33'
              BranchSideFuncs:
                - str_c
                - event_vsend
                - abort
                - event_send
            - BranchSide:      'event-log.c:378,14'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
                - str_append.5459
        - Branch String:   'event-log.c:372,7'
          Branch Sides:
            - BranchSide:      'event-log.c:373,15'
              BranchSideFuncs:
                - event_send
                - abort
            - BranchSide:      'event-log.c:375,16'
              BranchSideFuncs:
                - event_vsend
                - abort
        - Branch String:   'event-log.c:378,7'
          Branch Sides:
            - BranchSide:      'event-log.c:379,22'
              BranchSideFuncs:
                - str_append.5459
                - str_c
                - event_send
                - abort
            - BranchSide:      'event-log.c:381,24'
              BranchSideFuncs:
                - str_vprintfa
                - str_c
                - event_send
                - abort
        - Branch String:   'event-log.c:384,6'
          Branch Sides:
            - BranchSide:      'event-log.c:385,3'
              BranchSideFuncs:
                - abort
            - BranchSide:      'event-log.c:386,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:344,2'
          Dst:             i_panic
        - Src:             'event-log.c:347,6'
          Dst:             event_filter_match_source
        - Src:             'event-log.c:354,22'
          Dst:             t_str_new
        - Src:             'event-log.c:355,7'
          Dst:             event_get_log_message
        - Src:             'event-log.c:361,4'
          Dst:             str_vprintfa
        - Src:             'event-log.c:365,4'
          Dst:             event_vsend
        - Src:             'event-log.c:370,20'
          Dst:             str_c
        - Src:             'event-log.c:373,4'
          Dst:             event_send
        - Src:             'event-log.c:375,4'
          Dst:             event_vsend
        - Src:             'event-log.c:379,4'
          Dst:             str_append
        - Src:             'event-log.c:381,4'
          Dst:             str_vprintfa
        - Src:             'event-log.c:382,33'
          Dst:             str_c
        - Src:             'event-log.c:382,3'
          Dst:             event_send
        - Src:             'event-log.c:385,3'
          Dst:             abort
    - functionName:    event_want_log_level
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - level
        - source_filename
        - source_linenum
      BBCount:         28
      ICount:          174
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - event_filter_match_source
      functionUses:    2
      BranchProfiles:
        - Branch String:   'event-log.c:277,32'
          Branch Sides:
            - BranchSide:      'event-log.c:277,35'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
            - BranchSide:      'event-log.c:279,6'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:277,6'
          Branch Sides:
            - BranchSide:      'event-log.c:278,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:279,6'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:279,6'
          Branch Sides:
            - BranchSide:      'event-log.c:281,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:284,6'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:284,6'
          Branch Sides:
            - BranchSide:      'event-log.c:289,10'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:292,3'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:294,6'
          Branch Sides:
            - BranchSide:      'event-log.c:296,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:297,13'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
        - Branch String:   'event-log.c:297,45'
          Branch Sides:
            - BranchSide:      'event-log.c:298,32'
              BranchSideFuncs:
                - event_filter_match_source
                - event_filter_match_source
            - BranchSide:      'event-log.c:302,13'
              BranchSideFuncs:
                - event_filter_match_source
        - Branch String:   'event-log.c:297,13'
          Branch Sides:
            - BranchSide:      'event-log.c:301,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:302,13'
              BranchSideFuncs:
                - event_filter_match_source
        - Branch String:   'event-log.c:302,44'
          Branch Sides:
            - BranchSide:      'event-log.c:303,32'
              BranchSideFuncs:
                - event_filter_match_source
            - BranchSide:      'event-log.c:308,3'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:302,13'
          Branch Sides:
            - BranchSide:      'event-log.c:306,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:308,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:298,6'
          Dst:             event_filter_match_source
        - Src:             'event-log.c:303,6'
          Dst:             event_filter_match_source
    - functionName:    event_log
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - params
        - fmt
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_logv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'event-log.c:266,2'
          Dst:             event_logv
    - functionName:    event_logv
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - params
        - fmt
        - args
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - event_logv_params
        - event_ref
        - event_set_source
        - event_unref
        - event_want_log_level
      functionUses:    6
      BranchProfiles:
        - Branch String:   'event-log.c:395,6'
          Branch Sides:
            - BranchSide:      'event-log.c:395,6'
              BranchSideFuncs:
                - event_set_source
                - event_want_log_level
                - event_ref
                - event_logv_params
                - event_set_source
                - event_unref
                - __errno_location
            - BranchSide:      'event-log.c:396,20'
              BranchSideFuncs:
                - event_set_source
                - event_want_log_level
                - event_ref
                - event_logv_params
                - event_set_source
                - event_unref
                - __errno_location
      Callsites:
        - Src:             'event-log.c:393,18'
          Dst:             __errno_location
        - Src:             'event-log.c:396,3'
          Dst:             event_set_source
        - Src:             'event-log.c:400,8'
          Dst:             event_want_log_level
        - Src:             'event-log.c:404,2'
          Dst:             event_ref
        - Src:             'event-log.c:405,2'
          Dst:             event_logv_params
        - Src:             'event-log.c:406,2'
          Dst:             event_set_source
        - Src:             'event-log.c:408,2'
          Dst:             event_unref
        - Src:             'event-log.c:409,2'
          Dst:             __errno_location
    - functionName:    e_log
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - level
        - source_filename
        - source_linenum
        - fmt
      BBCount:         9
      ICount:          73
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - event_logv
        - i_panic
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-log.c:117,4'
          Branch Sides:
            - BranchSide:      'event-log.c:117,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-log.c:117,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:115,2'
          Dst:             t_push
        - Src:             'event-log.c:116,3'
          Dst:             event_logv
        - Src:             'event-log.c:117,4'
          Dst:             t_pop
        - Src:             'event-log.c:117,4'
          Dst:             i_panic
    - functionName:    e_debug
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - source_filename
        - source_linenum
        - fmt
      BBCount:         9
      ICount:          69
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - event_logv
        - i_panic
        - t_pop
        - t_push
      functionUses:    72
      BranchProfiles:
        - Branch String:   'event-log.c:98,4'
          Branch Sides:
            - BranchSide:      'event-log.c:98,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-log.c:98,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:96,2'
          Dst:             t_push
        - Src:             'event-log.c:97,3'
          Dst:             event_logv
        - Src:             'event-log.c:98,4'
          Dst:             t_pop
        - Src:             'event-log.c:98,4'
          Dst:             i_panic
    - functionName:    e_info
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - source_filename
        - source_linenum
        - fmt
      BBCount:         12
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - event_logv
        - event_send_abort
        - event_want_level
        - i_panic
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-log.c:65,6'
          Branch Sides:
            - BranchSide:      'event-log.c:66,20'
              BranchSideFuncs:
                - t_push
                - event_logv
                - t_pop
                - i_panic
            - BranchSide:      'event-log.c:69,26'
              BranchSideFuncs:
                - t_push
                - event_logv
                - t_pop
                - i_panic
        - Branch String:   'event-log.c:79,4'
          Branch Sides:
            - BranchSide:      'event-log.c:79,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-log.c:79,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:65,7'
          Dst:             event_want_level
        - Src:             'event-log.c:66,3'
          Dst:             event_send_abort
        - Src:             'event-log.c:77,2'
          Dst:             t_push
        - Src:             'event-log.c:78,3'
          Dst:             event_logv
        - Src:             'event-log.c:79,4'
          Dst:             t_pop
        - Src:             'event-log.c:79,4'
          Dst:             i_panic
    - functionName:    event_want_level
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - level
        - source_filename
        - source_linenum
      BBCount:         11
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - event_filter_match_source
        - event_want_log_level
      functionUses:    76
      BranchProfiles:
        - Branch String:   'event-log.c:318,6'
          Branch Sides:
            - BranchSide:      'event-log.c:319,3'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:322,6'
              BranchSideFuncs:
                - event_filter_match_source
        - Branch String:   'event-log.c:322,6'
          Branch Sides:
            - BranchSide:      'event-log.c:323,26'
              BranchSideFuncs:
                - event_filter_match_source
            - BranchSide:      'event-log.c:330,2'
              BranchSideFuncs: []
        - Branch String:   'event-log.c:325,7'
          Branch Sides:
            - BranchSide:      'event-log.c:328,4'
              BranchSideFuncs: []
            - BranchSide:      'event-log.c:329,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:318,6'
          Dst:             event_want_log_level
        - Src:             'event-log.c:325,7'
          Dst:             event_filter_match_source
    - functionName:    e_warning
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - source_filename
        - source_linenum
        - fmt
      BBCount:         12
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - event_logv
        - event_send_abort
        - event_want_level
        - i_panic
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'event-log.c:42,6'
          Branch Sides:
            - BranchSide:      'event-log.c:43,20'
              BranchSideFuncs:
                - t_push
                - event_logv
                - t_pop
                - i_panic
            - BranchSide:      'event-log.c:46,26'
              BranchSideFuncs:
                - t_push
                - event_logv
                - t_pop
                - i_panic
        - Branch String:   'event-log.c:56,4'
          Branch Sides:
            - BranchSide:      'event-log.c:56,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-log.c:56,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:42,7'
          Dst:             event_want_level
        - Src:             'event-log.c:43,3'
          Dst:             event_send_abort
        - Src:             'event-log.c:54,2'
          Dst:             t_push
        - Src:             'event-log.c:55,3'
          Dst:             event_logv
        - Src:             'event-log.c:56,4'
          Dst:             t_pop
        - Src:             'event-log.c:56,4'
          Dst:             i_panic
    - functionName:    e_error
      functionSourceFile: '/src/dovecot/src/lib/event-log.c'
      linkageType:     externalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - source_filename
        - source_linenum
        - fmt
      BBCount:         12
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - event_logv
        - event_send_abort
        - event_want_level
        - i_panic
        - t_pop
        - t_push
      functionUses:    10
      BranchProfiles:
        - Branch String:   'event-log.c:19,6'
          Branch Sides:
            - BranchSide:      'event-log.c:20,20'
              BranchSideFuncs:
                - t_push
                - event_logv
                - t_pop
                - i_panic
            - BranchSide:      'event-log.c:23,26'
              BranchSideFuncs:
                - t_push
                - event_logv
                - t_pop
                - i_panic
        - Branch String:   'event-log.c:33,4'
          Branch Sides:
            - BranchSide:      'event-log.c:33,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'event-log.c:33,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'event-log.c:19,7'
          Dst:             event_want_level
        - Src:             'event-log.c:20,3'
          Dst:             event_send_abort
        - Src:             'event-log.c:31,2'
          Dst:             t_push
        - Src:             'event-log.c:32,3'
          Dst:             event_logv
        - Src:             'event-log.c:33,4'
          Dst:             t_pop
        - Src:             'event-log.c:33,4'
          Dst:             i_panic
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   './str.h:90,6'
          Branch Sides:
            - BranchSide:      './str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      './str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             './str.h:90,6'
          Dst:             str_len
        - Src:             './str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    internal_send_split
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 775
      functionLinenumberEnd: 821
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - full_str
        - prefix_len
      BBCount:         21
      ICount:          156
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - log_fd_write
        - str_append_c
        - str_append_data
        - str_append_max
        - str_c
        - str_data
        - str_len
        - str_truncate
        - strchr
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:794,6'
          Branch Sides:
            - BranchSide:      'failures.c:795,18'
              BranchSideFuncs:
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_append_max
                - str_append_c.5606
            - BranchSide:      'failures.c:798,16'
              BranchSideFuncs:
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_append_max
                - str_append_c.5606
        - Branch String:   'failures.c:795,18'
          Branch Sides:
            - BranchSide:      'failures.c:795,16'
              BranchSideFuncs:
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_append_max
                - str_append_c.5606
            - BranchSide:      'failures.c:795,16'
              BranchSideFuncs:
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_append_max
                - str_append_c.5606
        - Branch String:   'failures.c:801,2'
          Branch Sides:
            - BranchSide:      'failures.c:802,16'
              BranchSideFuncs:
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_len.5603
                - str_append_max
                - str_append_c.5606
            - BranchSide:      'failures.c:820,2'
              BranchSideFuncs: []
        - Branch String:   'failures.c:806,18'
          Branch Sides:
            - BranchSide:      'failures.c:806,30'
              BranchSideFuncs:
                - str_append_max
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
            - BranchSide:      'failures.c:807,19'
              BranchSideFuncs:
                - str_append_max
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
        - Branch String:   'failures.c:806,7'
          Branch Sides:
            - BranchSide:      'failures.c:807,19'
              BranchSideFuncs:
                - str_append_max
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
            - BranchSide:      'failures.c:812,15'
              BranchSideFuncs:
                - str_append_data.5605
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_max
                - str_append_c.5606
        - Branch String:   'failures.c:815,7'
          Branch Sides:
            - BranchSide:      'failures.c:817,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:818,10'
              BranchSideFuncs:
                - str_len.5603
                - str_truncate.5602
                - str_c
                - strchr
                - str_append_data.5605
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_append_max
                - str_append_c.5606
      Callsites:
        - Src:             'failures.c:792,8'
          Dst:             t_str_new
        - Src:             'failures.c:793,23'
          Dst:             str_data
        - Src:             'failures.c:793,2'
          Dst:             str_append_data
        - Src:             'failures.c:801,15'
          Dst:             str_len
        - Src:             'failures.c:802,3'
          Dst:             str_truncate
        - Src:             'failures.c:803,22'
          Dst:             str_c
        - Src:             'failures.c:804,20'
          Dst:             strchr
        - Src:             'failures.c:807,4'
          Dst:             str_append_max
        - Src:             'failures.c:808,4'
          Dst:             str_append_c
        - Src:             'failures.c:813,4'
          Dst:             str_append_data
        - Src:             'failures.c:816,6'
          Dst:             str_data
        - Src:             'failures.c:816,21'
          Dst:             str_len
        - Src:             'failures.c:815,7'
          Dst:             log_fd_write
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:39,2'
          Dst:             buffer_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    log_fd_write
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - data
        - len
      BBCount:         33
      ICount:          180
      EdgeCount:       41
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - fd_wait_writable
        - process_title_get
        - process_title_set
        - t_strdup
        - t_strdup_printf
        - write
      functionUses:    5
      BranchProfiles:
        - Branch String:   'failures.c:380,17'
          Branch Sides:
            - BranchSide:      'failures.c:380,2'
              BranchSideFuncs:
                - process_title_set
                - __errno_location
                - write
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
            - BranchSide:      'failures.c:381,22'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
        - Branch String:   'failures.c:380,2'
          Branch Sides:
            - BranchSide:      'failures.c:382,7'
              BranchSideFuncs:
                - __errno_location
                - write
                - process_title_set
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
            - BranchSide:      'failures.c:440,6'
              BranchSideFuncs:
                - process_title_set
        - Branch String:   'failures.c:382,7'
          Branch Sides:
            - BranchSide:      'failures.c:384,12'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
            - BranchSide:      'failures.c:388,7'
              BranchSideFuncs:
                - __errno_location
                - write
                - process_title_set
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
        - Branch String:   'failures.c:388,7'
          Branch Sides:
            - BranchSide:      'failures.c:390,4'
              BranchSideFuncs:
                - __errno_location
                - process_title_set
            - BranchSide:      'failures.c:394,11'
              BranchSideFuncs:
                - __errno_location
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
        - Branch String:   'failures.c:394,3'
          Branch Sides:
            - BranchSide:      'failures.c:406,9'
              BranchSideFuncs:
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - write
                - process_title_set
                - __errno_location
                - __errno_location
            - BranchSide:      'failures.c:422,8'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
            - BranchSide:      'failures.c:435,11'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
        - Branch String:   'failures.c:406,8'
          Branch Sides:
            - BranchSide:      'failures.c:409,27'
              BranchSideFuncs:
                - fd_wait_writable
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - __errno_location
            - BranchSide:      'failures.c:418,21'
              BranchSideFuncs:
                - fd_wait_writable
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - __errno_location
        - Branch String:   'failures.c:411,9'
          Branch Sides:
            - BranchSide:      'failures.c:412,12'
              BranchSideFuncs:
                - process_title_set
                - fd_wait_writable
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - __errno_location
            - BranchSide:      'failures.c:415,9'
              BranchSideFuncs:
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - __errno_location
        - Branch String:   'failures.c:422,8'
          Branch Sides:
            - BranchSide:      'failures.c:424,4'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
            - BranchSide:      'failures.c:424,35'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
        - Branch String:   'failures.c:424,15'
          Branch Sides:
            - BranchSide:      'failures.c:427,4'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
            - BranchSide:      'failures.c:430,12'
              BranchSideFuncs:
                - write
                - process_title_set
                - __errno_location
                - process_title_get
                - t_strdup
                - t_strdup_printf
                - process_title_set
                - fd_wait_writable
                - __errno_location
        - Branch String:   'failures.c:440,6'
          Branch Sides:
            - BranchSide:      'failures.c:440,6'
              BranchSideFuncs:
                - process_title_set
            - BranchSide:      'failures.c:441,21'
              BranchSideFuncs:
                - process_title_set
      Callsites:
        - Src:             'failures.c:381,16'
          Dst:             write
        - Src:             'failures.c:390,4'
          Dst:             __errno_location
        - Src:             'failures.c:394,11'
          Dst:             __errno_location
        - Src:             'failures.c:410,26'
          Dst:             process_title_get
        - Src:             'failures.c:410,17'
          Dst:             t_strdup
        - Src:             'failures.c:414,14'
          Dst:             t_strdup_printf
        - Src:             'failures.c:416,5'
          Dst:             process_title_set
        - Src:             'failures.c:418,4'
          Dst:             fd_wait_writable
        - Src:             'failures.c:441,3'
          Dst:             process_title_set
    - functionName:    write
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fd_wait_writable
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - fd
      BBCount:         8
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - abort
        - poll
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:365,28'
          Branch Sides:
            - BranchSide:      'failures.c:365,31'
              BranchSideFuncs:
                - __errno_location
                - abort
            - BranchSide:      'failures.c:365,28'
              BranchSideFuncs: []
        - Branch String:   'failures.c:365,6'
          Branch Sides:
            - BranchSide:      'failures.c:365,6'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:368,3'
              BranchSideFuncs:
                - abort
      Callsites:
        - Src:             'failures.c:365,6'
          Dst:             poll
        - Src:             'failures.c:365,31'
          Dst:             __errno_location
        - Src:             'failures.c:368,3'
          Dst:             abort
    - functionName:    poll
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_failure_send_option_forced
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - log_fd_write
        - strlen
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:735,8'
          Dst:             t_strdup_printf
        - Src:             'failures.c:738,8'
          Dst:             strlen
        - Src:             'failures.c:737,9'
          Dst:             log_fd_write
    - functionName:    internal_write
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         28
      ICount:          182
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - i_failure_send_option_forced
        - internal_send_split
        - log_fd_write
        - log_prefix_sanitize
        - str_append
        - str_append_c
        - str_c
        - str_data
        - str_len
        - str_printfa
        - str_vprintfa
        - strchr
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:199,6'
          Branch Sides:
            - BranchSide:      'failures.c:200,12'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5613
                - str_printfa
            - BranchSide:      'failures.c:203,14'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5613
                - str_printfa
                - i_failure_send_option_forced
        - Branch String:   'failures.c:201,7'
          Branch Sides:
            - BranchSide:      'failures.c:202,13'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5613
                - str_printfa
            - BranchSide:      'failures.c:203,2'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5613
                - str_printfa
        - Branch String:   'failures.c:204,7'
          Branch Sides:
            - BranchSide:      'failures.c:208,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:210,19'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5613
                - str_printfa
        - Branch String:   'failures.c:215,6'
          Branch Sides:
            - BranchSide:      'failures.c:216,15'
              BranchSideFuncs:
                - str_printfa
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5613
            - BranchSide:      'failures.c:217,6'
              BranchSideFuncs:
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - log_prefix_sanitize
                - str_append.5613
        - Branch String:   'failures.c:217,6'
          Branch Sides:
            - BranchSide:      'failures.c:218,14'
              BranchSideFuncs:
                - log_prefix_sanitize
                - str_append.5613
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
            - BranchSide:      'failures.c:219,30'
              BranchSideFuncs:
                - str_len.5603
                - str_vprintfa
                - str_len.5603
                - internal_send_split
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
        - Branch String:   'failures.c:223,34'
          Branch Sides:
            - BranchSide:      'failures.c:223,50'
              BranchSideFuncs:
                - str_c
                - strchr
                - internal_send_split
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
            - BranchSide:      'failures.c:229,29'
              BranchSideFuncs:
                - internal_send_split
        - Branch String:   'failures.c:223,6'
          Branch Sides:
            - BranchSide:      'failures.c:225,3'
              BranchSideFuncs:
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
            - BranchSide:      'failures.c:229,29'
              BranchSideFuncs:
                - internal_send_split
      Callsites:
        - Src:             'failures.c:204,7'
          Dst:             i_failure_send_option_forced
        - Src:             'failures.c:213,9'
          Dst:             t_str_new
        - Src:             'failures.c:214,2'
          Dst:             str_printfa
        - Src:             'failures.c:216,3'
          Dst:             str_printfa
        - Src:             'failures.c:218,20'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:218,3'
          Dst:             str_append
        - Src:             'failures.c:219,22'
          Dst:             str_len
        - Src:             'failures.c:221,2'
          Dst:             str_vprintfa
        - Src:             'failures.c:223,6'
          Dst:             str_len
        - Src:             'failures.c:223,44'
          Dst:             str_c
        - Src:             'failures.c:223,37'
          Dst:             strchr
        - Src:             'failures.c:225,3'
          Dst:             str_append_c
        - Src:             'failures.c:227,9'
          Dst:             str_data
        - Src:             'failures.c:227,25'
          Dst:             str_len
        - Src:             'failures.c:226,10'
          Dst:             log_fd_write
        - Src:             'failures.c:229,9'
          Dst:             internal_send_split
    - functionName:    log_prefix_sanitize
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_str_replace
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:77,9'
          Dst:             t_str_replace
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    syslog_write
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         31
      ICount:          192
      EdgeCount:       33
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - i_unreached
        - log_prefix_add
        - log_prefix_sanitize
        - str_append
        - str_c
        - str_c_modifiable
        - str_delete
        - str_len
        - str_vprintfa
        - strchr
        - syslog
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:140,6'
          Branch Sides:
            - BranchSide:      'failures.c:141,7'
              BranchSideFuncs:
                - str_len.5603
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
                - str_append.5613
                - log_prefix_sanitize
                - str_append.5613
            - BranchSide:      'failures.c:146,18'
              BranchSideFuncs:
                - log_prefix_add
                - str_len.5603
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
        - Branch String:   'failures.c:141,7'
          Branch Sides:
            - BranchSide:      'failures.c:142,15'
              BranchSideFuncs:
                - log_prefix_sanitize
                - str_append.5613
                - str_len.5603
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
            - BranchSide:      'failures.c:143,12'
              BranchSideFuncs:
                - str_len.5603
                - str_vprintfa
                - i_unreached
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
                - str_append.5613
        - Branch String:   'failures.c:152,2'
          Branch Sides:
            - BranchSide:      'failures.c:154,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
            - BranchSide:      'failures.c:157,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
            - BranchSide:      'failures.c:160,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
            - BranchSide:      'failures.c:163,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
            - BranchSide:      'failures.c:167,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
            - BranchSide:      'failures.c:167,9'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
            - BranchSide:      'failures.c:171,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'failures.c:171,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'failures.c:174,2'
              BranchSideFuncs:
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - i_panic
        - Branch String:   'failures.c:174,2'
          Branch Sides:
            - BranchSide:      'failures.c:175,21'
              BranchSideFuncs:
                - str_c_modifiable
                - str_c
                - syslog
                - str_delete.5623
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - i_panic
            - BranchSide:      'failures.c:183,9'
              BranchSideFuncs:
                - str_c
                - syslog
        - Branch String:   'failures.c:179,3'
          Branch Sides:
            - BranchSide:      'failures.c:179,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:180,14'
              BranchSideFuncs:
                - str_delete.5623
                - str_c_modifiable
                - strchr
                - str_c
                - syslog
                - str_c_modifiable
                - str_c
                - syslog
                - i_panic
      Callsites:
        - Src:             'failures.c:139,19'
          Dst:             t_str_new
        - Src:             'failures.c:142,21'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:142,4'
          Dst:             str_append
        - Src:             'failures.c:144,4'
          Dst:             str_append
        - Src:             'failures.c:146,3'
          Dst:             log_prefix_add
        - Src:             'failures.c:148,22'
          Dst:             str_len
        - Src:             'failures.c:149,2'
          Dst:             str_vprintfa
        - Src:             'failures.c:171,3'
          Dst:             i_unreached
        - Src:             'failures.c:174,21'
          Dst:             str_c_modifiable
        - Src:             'failures.c:174,14'
          Dst:             strchr
        - Src:             'failures.c:175,25'
          Dst:             str_c_modifiable
        - Src:             'failures.c:177,23'
          Dst:             str_c
        - Src:             'failures.c:177,3'
          Dst:             syslog
        - Src:             'failures.c:179,3'
          Dst:             i_panic
        - Src:             'failures.c:180,3'
          Dst:             str_delete
        - Src:             'failures.c:183,22'
          Dst:             str_c
        - Src:             'failures.c:183,2'
          Dst:             syslog
    - functionName:    log_prefix_add
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         16
      ICount:          126
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - log_prefix_sanitize
        - str_append
        - str_append_data
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'failures.c:339,6'
          Branch Sides:
            - BranchSide:      'failures.c:341,7'
              BranchSideFuncs:
                - str_append.5613
                - str_append.5613
            - BranchSide:      'failures.c:344,13'
              BranchSideFuncs:
                - log_prefix_sanitize
                - strlen
                - str_append_data.5605
                - str_append.5613
                - str_append.5613
                - i_panic
                - log_prefix_sanitize
                - str_append.5613
                - str_append.5613
        - Branch String:   'failures.c:341,7'
          Branch Sides:
            - BranchSide:      'failures.c:342,15'
              BranchSideFuncs:
                - str_append.5613
                - str_append.5613
            - BranchSide:      'failures.c:343,14'
              BranchSideFuncs:
                - str_append.5613
        - Branch String:   'failures.c:344,13'
          Branch Sides:
            - BranchSide:      'failures.c:345,14'
              BranchSideFuncs:
                - log_prefix_sanitize
                - str_append.5613
                - str_append.5613
            - BranchSide:      'failures.c:348,44'
              BranchSideFuncs:
                - log_prefix_sanitize
                - strlen
                - str_append_data.5605
                - str_append.5613
                - str_append.5613
                - i_panic
        - Branch String:   'failures.c:349,3'
          Branch Sides:
            - BranchSide:      'failures.c:349,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:350,19'
              BranchSideFuncs:
                - str_append_data.5605
                - str_append.5613
                - str_append.5613
      Callsites:
        - Src:             'failures.c:342,4'
          Dst:             str_append
        - Src:             'failures.c:343,3'
          Dst:             str_append
        - Src:             'failures.c:345,19'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:345,3'
          Dst:             str_append
        - Src:             'failures.c:346,3'
          Dst:             str_append
        - Src:             'failures.c:348,24'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:349,3'
          Dst:             strlen
        - Src:             'failures.c:349,3'
          Dst:             i_panic
        - Src:             'failures.c:350,3'
          Dst:             str_append_data
        - Src:             'failures.c:351,3'
          Dst:             str_append
        - Src:             'failures.c:352,3'
          Dst:             str_append
    - functionName:    i_unreached
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 1018
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - source_filename
        - source_linenum
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    68
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:1020,2'
          Dst:             i_panic
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_panic
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - lib_set_clean_exit
      functionUses:    1158
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:521,2'
          Dst:             lib_set_clean_exit
    - functionName:    str_delete
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - str
        - pos
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:77,2'
          Dst:             buffer_delete
    - functionName:    default_fatal_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - fatal_handler_real
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:481,2'
          Dst:             fatal_handler_real
    - functionName:    fatal_handler_real
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - common_handler
        - default_fatal_finish
      functionUses:    3
      BranchProfiles:
        - Branch String:   'failures.c:470,44'
          Branch Sides:
            - BranchSide:      'failures.c:471,6'
              BranchSideFuncs:
                - default_fatal_finish
            - BranchSide:      'failures.c:473,23'
              BranchSideFuncs:
                - default_fatal_finish
        - Branch String:   'failures.c:470,6'
          Branch Sides:
            - BranchSide:      'failures.c:472,28'
              BranchSideFuncs:
                - default_fatal_finish
            - BranchSide:      'failures.c:473,23'
              BranchSideFuncs:
                - default_fatal_finish
      Callsites:
        - Src:             'failures.c:470,6'
          Dst:             common_handler
        - Src:             'failures.c:473,2'
          Dst:             default_fatal_finish
    - functionName:    common_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         17
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'failures.c:261,6'
          Branch Sides:
            - BranchSide:      'failures.c:264,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:266,10'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'failures.c:270,4'
          Branch Sides:
            - BranchSide:      'failures.c:270,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:270,4'
              BranchSideFuncs: []
        - Branch String:   'failures.c:272,14'
          Branch Sides:
            - BranchSide:      'failures.c:272,17'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:275,10'
              BranchSideFuncs: []
        - Branch String:   'failures.c:272,6'
          Branch Sides:
            - BranchSide:      'failures.c:273,7'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:275,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:268,2'
          Dst:             t_push
        - Src:             'failures.c:270,4'
          Dst:             t_pop
        - Src:             'failures.c:270,4'
          Dst:             i_panic
    - functionName:    default_fatal_finish
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - type
        - status
      BBCount:         24
      ICount:          108
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - abort
        - backtrace_get
        - failure_exit
        - getenv
        - i_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:452,30'
          Branch Sides:
            - BranchSide:      'failures.c:452,33'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
                - backtrace_get
                - i_error
            - BranchSide:      'failures.c:453,6'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
                - backtrace_get
                - i_error
        - Branch String:   'failures.c:452,59'
          Branch Sides:
            - BranchSide:      'failures.c:453,6'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
                - backtrace_get
                - i_error
            - BranchSide:      'failures.c:457,10'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
        - Branch String:   'failures.c:452,6'
          Branch Sides:
            - BranchSide:      'failures.c:454,7'
              BranchSideFuncs:
                - backtrace_get
                - getenv
                - failure_exit
                - getenv
                - abort
                - i_error
            - BranchSide:      'failures.c:457,10'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
        - Branch String:   'failures.c:454,7'
          Branch Sides:
            - BranchSide:      'failures.c:455,33'
              BranchSideFuncs:
                - i_error
                - getenv
                - failure_exit
                - getenv
                - abort
            - BranchSide:      'failures.c:456,2'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - getenv
                - abort
        - Branch String:   'failures.c:459,29'
          Branch Sides:
            - BranchSide:      'failures.c:459,32'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:461,3'
              BranchSideFuncs:
                - abort
        - Branch String:   'failures.c:459,61'
          Branch Sides:
            - BranchSide:      'failures.c:460,7'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:461,3'
              BranchSideFuncs:
                - abort
        - Branch String:   'failures.c:460,32'
          Branch Sides:
            - BranchSide:      'failures.c:460,35'
              BranchSideFuncs:
                - getenv
                - failure_exit
                - abort
            - BranchSide:      'failures.c:463,16'
              BranchSideFuncs:
                - failure_exit
        - Branch String:   'failures.c:459,6'
          Branch Sides:
            - BranchSide:      'failures.c:461,3'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:463,16'
              BranchSideFuncs:
                - failure_exit
      Callsites:
        - Src:             'failures.c:454,7'
          Dst:             backtrace_get
        - Src:             'failures.c:455,4'
          Dst:             i_error
        - Src:             'failures.c:459,32'
          Dst:             getenv
        - Src:             'failures.c:460,35'
          Dst:             getenv
        - Src:             'failures.c:461,3'
          Dst:             abort
        - Src:             'failures.c:463,3'
          Dst:             failure_exit
    - functionName:    i_error
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    55
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:565,18'
          Dst:             __errno_location
        - Src:             'failures.c:572,2'
          Dst:             __errno_location
    - functionName:    failure_exit
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - status
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - lib_exit
      functionUses:    5
      BranchProfiles:
        - Branch String:   'failures.c:310,36'
          Branch Sides:
            - BranchSide:      'failures.c:310,40'
              BranchSideFuncs:
                - lib_exit
            - BranchSide:      'failures.c:314,11'
              BranchSideFuncs:
                - lib_exit
        - Branch String:   'failures.c:310,6'
          Branch Sides:
            - BranchSide:      'failures.c:311,12'
              BranchSideFuncs:
                - lib_exit
            - BranchSide:      'failures.c:314,11'
              BranchSideFuncs:
                - lib_exit
      Callsites:
        - Src:             'failures.c:314,2'
          Dst:             lib_exit
    - functionName:    default_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - error_handler_real
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:489,2'
          Dst:             error_handler_real
    - functionName:    error_handler_real
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - common_handler
      functionUses:    3
      BranchProfiles:
        - Branch String:   'failures.c:282,6'
          Branch Sides:
            - BranchSide:      'failures.c:283,19'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:284,6'
              BranchSideFuncs:
                - abort
        - Branch String:   'failures.c:284,34'
          Branch Sides:
            - BranchSide:      'failures.c:284,37'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:284,34'
              BranchSideFuncs: []
        - Branch String:   'failures.c:284,6'
          Branch Sides:
            - BranchSide:      'failures.c:284,6'
              BranchSideFuncs:
                - abort
            - BranchSide:      'failures.c:285,3'
              BranchSideFuncs:
                - abort
      Callsites:
        - Src:             'failures.c:282,6'
          Dst:             common_handler
        - Src:             'failures.c:285,3'
          Dst:             abort
    - functionName:    default_write
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         13
      ICount:          122
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - log_fd_write
        - log_prefix_add
        - log_timestamp_add
        - printf_format_fix
        - str_append_c
        - str_c
        - str_data
        - str_delete
        - str_len
        - str_vprintfa
        - strchr
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:93,2'
          Branch Sides:
            - BranchSide:      'failures.c:95,8'
              BranchSideFuncs:
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_c
                - str_data.5604
                - log_fd_write
                - str_delete.5623
            - BranchSide:      'failures.c:98,8'
              BranchSideFuncs:
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_c
                - str_data.5604
                - log_fd_write
                - str_delete.5623
            - BranchSide:      'failures.c:101,8'
              BranchSideFuncs:
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_c
                - str_data.5604
                - log_fd_write
                - str_delete.5623
        - Branch String:   'failures.c:106,2'
          Branch Sides:
            - BranchSide:      'failures.c:107,21'
              BranchSideFuncs:
                - str_c
                - str_data.5604
                - log_fd_write
                - str_delete.5623
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
            - BranchSide:      'failures.c:114,2'
              BranchSideFuncs:
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
        - Branch String:   'failures.c:108,7'
          Branch Sides:
            - BranchSide:      'failures.c:109,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:111,14'
              BranchSideFuncs:
                - str_delete.5623
                - str_c
                - strchr
                - str_append_c.5606
                - str_data.5604
                - str_len.5603
                - log_fd_write
                - str_c
                - str_data.5604
                - log_fd_write
      Callsites:
        - Src:             'failures.c:84,19'
          Dst:             t_str_new
        - Src:             'failures.c:85,2'
          Dst:             log_timestamp_add
        - Src:             'failures.c:86,2'
          Dst:             log_prefix_add
        - Src:             'failures.c:87,22'
          Dst:             str_len
        - Src:             'failures.c:90,21'
          Dst:             printf_format_fix
        - Src:             'failures.c:90,2'
          Dst:             str_vprintfa
        - Src:             'failures.c:106,21'
          Dst:             str_c
        - Src:             'failures.c:106,14'
          Dst:             strchr
        - Src:             'failures.c:107,25'
          Dst:             str_c
        - Src:             'failures.c:108,24'
          Dst:             str_data
        - Src:             'failures.c:108,7'
          Dst:             log_fd_write
        - Src:             'failures.c:111,3'
          Dst:             str_delete
        - Src:             'failures.c:114,2'
          Dst:             str_append_c
        - Src:             'failures.c:115,26'
          Dst:             str_data
        - Src:             'failures.c:115,42'
          Dst:             str_len
        - Src:             'failures.c:115,9'
          Dst:             log_fd_write
    - functionName:    default_on_handler_failure
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         7
      ICount:          39
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached:
        - failure_exit
        - i_fatal_status
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:121,2'
          Branch Sides:
            - BranchSide:      'failures.c:123,12'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'failures.c:129,11'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'failures.c:131,3'
              BranchSideFuncs:
                - failure_exit
      Callsites:
        - Src:             'failures.c:128,3'
          Dst:             i_fatal_status
        - Src:             'failures.c:131,3'
          Dst:             failure_exit
    - functionName:    i_fatal_status
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - status
        - format
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - lib_set_clean_exit
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:552,2'
          Dst:             lib_set_clean_exit
    - functionName:    log_timestamp_add
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - str
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_log_stamp_format
        - i_gettimeofday
        - localtime
        - str_append
        - strftime
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:323,6'
          Branch Sides:
            - BranchSide:      'failures.c:323,6'
              BranchSideFuncs:
                - get_log_stamp_format
                - strftime
                - str_append.5613
                - i_gettimeofday
                - localtime
            - BranchSide:      'failures.c:324,7'
              BranchSideFuncs:
                - get_log_stamp_format
                - strftime
                - str_append.5613
                - i_gettimeofday
                - localtime
        - Branch String:   'failures.c:324,7'
          Branch Sides:
            - BranchSide:      'failures.c:325,4'
              BranchSideFuncs:
                - i_gettimeofday
                - localtime
                - get_log_stamp_format
                - strftime
                - str_append.5613
            - BranchSide:      'failures.c:328,18'
              BranchSideFuncs:
                - get_log_stamp_format
                - strftime
                - str_append.5613
        - Branch String:   'failures.c:331,7'
          Branch Sides:
            - BranchSide:      'failures.c:333,15'
              BranchSideFuncs:
                - str_append.5613
            - BranchSide:      'failures.c:334,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:325,4'
          Dst:             i_gettimeofday
        - Src:             'failures.c:326,9'
          Dst:             localtime
        - Src:             'failures.c:332,9'
          Dst:             get_log_stamp_format
        - Src:             'failures.c:331,7'
          Dst:             strftime
        - Src:             'failures.c:333,4'
          Dst:             str_append
    - functionName:    get_log_stamp_format
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - format_arg
        - timestamp_usecs
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:300,6'
          Branch Sides:
            - BranchSide:      'failures.c:301,10'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:302,37'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'failures.c:302,9'
          Dst:             t_strdup_printf
    - 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:    failures_deinit
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 1015
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         29
      ICount:          115
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - i_close_fd_path
        - log_fd_can_close
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:990,6'
          Branch Sides:
            - BranchSide:      'failures.c:990,6'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:990,6'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:990,34'
          Branch Sides:
            - BranchSide:      'failures.c:990,37'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:991,16'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:990,6'
          Branch Sides:
            - BranchSide:      'failures.c:991,16'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:993,6'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:993,6'
          Branch Sides:
            - BranchSide:      'failures.c:994,15'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:996,23'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:996,6'
          Branch Sides:
            - BranchSide:      'failures.c:997,3'
              BranchSideFuncs:
                - i_close_fd_path
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
            - BranchSide:      'failures.c:1001,23'
              BranchSideFuncs:
                - log_fd_can_close
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'failures.c:1001,6'
          Branch Sides:
            - BranchSide:      'failures.c:1002,3'
              BranchSideFuncs:
                - i_close_fd_path
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
            - BranchSide:      'failures.c:1006,23'
              BranchSideFuncs:
                - log_fd_can_close
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - i_close_fd_path
        - Branch String:   'failures.c:1006,6'
          Branch Sides:
            - BranchSide:      'failures.c:1007,3'
              BranchSideFuncs:
                - i_close_fd_path
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
            - BranchSide:      'failures.c:1011,2'
              BranchSideFuncs:
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
                - p_free_internal.5647
      Callsites:
        - Src:             'failures.c:996,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:997,3'
          Dst:             i_close_fd_path
        - Src:             'failures.c:1001,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:1002,3'
          Dst:             i_close_fd_path
        - Src:             'failures.c:1006,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:1007,3'
          Dst:             i_close_fd_path
        - Src:             'failures.c:1011,2'
          Dst:             p_free_internal
        - Src:             'failures.c:1012,2'
          Dst:             p_free_internal
        - Src:             'failures.c:1013,2'
          Dst:             p_free_internal
        - Src:             'failures.c:1014,2'
          Dst:             p_free_internal
    - functionName:    log_fd_can_close
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - fd
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'failures.c:71,29'
          Branch Sides:
            - BranchSide:      'failures.c:71,32'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:71,29'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_set_failure_exit_callback
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 984
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_set_failure_send_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 979
      functionLinenumberEnd: 981
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_failure_send_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:980,2'
          Dst:             i_failure_send_option
    - functionName:    i_failure_send_option
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_failure_send_option_forced
      functionUses:    2
      BranchProfiles:
        - Branch String:   'failures.c:743,6'
          Branch Sides:
            - BranchSide:      'failures.c:743,6'
              BranchSideFuncs:
                - i_failure_send_option_forced
            - BranchSide:      'failures.c:744,38'
              BranchSideFuncs:
                - i_failure_send_option_forced
      Callsites:
        - Src:             'failures.c:744,9'
          Dst:             i_failure_send_option_forced
    - functionName:    i_internal_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 902
      functionLinenumberEnd: 906
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - error_handler_real
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:905,2'
          Dst:             error_handler_real
    - functionName:    internal_on_handler_failure
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - failure_exit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:234,2'
          Dst:             failure_exit
    - functionName:    i_set_failure_send_ip
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 974
      functionLinenumberEnd: 976
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_failure_send_option
        - net_ip2addr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:975,30'
          Dst:             net_ip2addr
        - Src:             'failures.c:975,2'
          Dst:             i_failure_send_option
    - functionName:    i_set_failure_timestamp_format
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 971
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fmt
      BBCount:         10
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_strdup
        - i_strdup_until
        - p_free_internal
        - strstr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:965,6'
          Branch Sides:
            - BranchSide:      'failures.c:966,31'
              BranchSideFuncs:
                - i_strdup
            - BranchSide:      'failures.c:968,37'
              BranchSideFuncs:
                - i_strdup_until
                - i_strdup
      Callsites:
        - Src:             'failures.c:961,2'
          Dst:             p_free_internal
        - Src:             'failures.c:962,2'
          Dst:             p_free_internal
        - Src:             'failures.c:964,6'
          Dst:             strstr
        - Src:             'failures.c:966,22'
          Dst:             i_strdup
        - Src:             'failures.c:968,22'
          Dst:             i_strdup_until
        - Src:             'failures.c:969,29'
          Dst:             i_strdup
    - functionName:    i_failure_have_stdout_logs
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 951
      functionLinenumberEnd: 954
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:952,33'
          Branch Sides:
            - BranchSide:      'failures.c:952,33'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:953,3'
              BranchSideFuncs: []
        - Branch String:   'failures.c:953,32'
          Branch Sides:
            - BranchSide:      'failures.c:953,32'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:954,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_set_debug_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 942
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - open_log_file
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:943,29'
          Branch Sides:
            - BranchSide:      'failures.c:943,32'
              BranchSideFuncs:
                - open_log_file
            - BranchSide:      'failures.c:944,16'
              BranchSideFuncs:
                - open_log_file
        - Branch String:   'failures.c:943,6'
          Branch Sides:
            - BranchSide:      'failures.c:943,6'
              BranchSideFuncs:
                - open_log_file
            - BranchSide:      'failures.c:944,16'
              BranchSideFuncs:
                - open_log_file
      Callsites:
        - Src:             'failures.c:946,2'
          Dst:             open_log_file
    - functionName:    open_log_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 702
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - path
      BBCount:         22
      ICount:          120
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - close
        - failure_exit
        - fd_close_on_exec
        - i_fatal_status
        - log_fd_can_close
        - open
        - strcmp
        - strlen
        - t_strdup_printf
        - write_full
      functionUses:    3
      BranchProfiles:
        - Branch String:   'failures.c:677,6'
          Branch Sides:
            - BranchSide:      'failures.c:678,14'
              BranchSideFuncs:
                - close
                - strcmp
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
                - t_strdup_printf
                - strlen
                - write_full
            - BranchSide:      'failures.c:684,6'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:678,7'
          Branch Sides:
            - BranchSide:      'failures.c:679,53'
              BranchSideFuncs:
                - t_strdup_printf
                - strlen
                - write_full
                - strcmp
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
            - BranchSide:      'failures.c:682,2'
              BranchSideFuncs:
                - strcmp
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:684,19'
          Branch Sides:
            - BranchSide:      'failures.c:684,29'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:685,4'
              BranchSideFuncs: []
        - Branch String:   'failures.c:684,6'
          Branch Sides:
            - BranchSide:      'failures.c:685,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:686,18'
              BranchSideFuncs:
                - strcmp
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:686,11'
          Branch Sides:
            - BranchSide:      'failures.c:687,4'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:689,14'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
        - Branch String:   'failures.c:690,7'
          Branch Sides:
            - BranchSide:      'failures.c:691,5'
              BranchSideFuncs:
                - t_strdup_printf
                - strlen
                - write_full
                - i_fatal_status
                - failure_exit
            - BranchSide:      'failures.c:700,21'
              BranchSideFuncs:
                - fd_close_on_exec
        - Branch String:   'failures.c:695,8'
          Branch Sides:
            - BranchSide:      'failures.c:696,5'
              BranchSideFuncs:
                - failure_exit
            - BranchSide:      'failures.c:698,41'
              BranchSideFuncs:
                - i_fatal_status
      Callsites:
        - Src:             'failures.c:677,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:678,7'
          Dst:             close
        - Src:             'failures.c:679,10'
          Dst:             t_strdup_printf
        - Src:             'failures.c:680,41'
          Dst:             strlen
        - Src:             'failures.c:680,10'
          Dst:             write_full
        - Src:             'failures.c:684,22'
          Dst:             strcmp
        - Src:             'failures.c:686,11'
          Dst:             strcmp
        - Src:             'failures.c:689,9'
          Dst:             open
        - Src:             'failures.c:692,10'
          Dst:             t_strdup_printf
        - Src:             'failures.c:694,41'
          Dst:             strlen
        - Src:             'failures.c:694,10'
          Dst:             write_full
        - Src:             'failures.c:696,5'
          Dst:             failure_exit
        - Src:             'failures.c:698,5'
          Dst:             i_fatal_status
        - Src:             'failures.c:700,3'
          Dst:             fd_close_on_exec
    - functionName:    i_set_info_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - default_error_handler
        - i_set_debug_handler
        - open_log_file
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:930,6'
          Branch Sides:
            - BranchSide:      'failures.c:930,6'
              BranchSideFuncs:
                - open_log_file
                - i_set_debug_handler
            - BranchSide:      'failures.c:931,15'
              BranchSideFuncs:
                - open_log_file
                - i_set_debug_handler
      Callsites:
        - Src:             'failures.c:933,2'
          Dst:             open_log_file
        - Src:             'failures.c:938,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:938,2'
          Dst:             default_error_handler
    - functionName:    i_set_debug_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 628
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_set_failure_ignore_errors
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 924
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ignore
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_failure_handler_is_internal
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 920
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:919,46'
          Branch Sides:
            - BranchSide:      'failures.c:919,46'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:920,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_internal_fatal_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - fatal_handler_real
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:894,2'
          Dst:             fatal_handler_real
    - functionName:    i_set_failure_internal
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 909
      functionLinenumberEnd: 915
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fd_set_nonblock
        - i_internal_error_handler
        - i_internal_fatal_handler
        - i_set_debug_handler
        - i_set_error_handler
        - i_set_fatal_handler
        - i_set_info_handler
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:910,2'
          Branch Sides:
            - BranchSide:      'failures.c:910,2'
              BranchSideFuncs:
                - fd_set_nonblock
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
            - BranchSide:      'failures.c:910,2'
              BranchSideFuncs:
                - fd_set_nonblock
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
      Callsites:
        - Src:             'failures.c:910,2'
          Dst:             fd_set_nonblock
        - Src:             'failures.c:911,2'
          Dst:             i_set_fatal_handler
        - Src:             'failures.c:911,2'
          Dst:             i_internal_fatal_handler
        - Src:             'failures.c:912,2'
          Dst:             i_set_error_handler
        - Src:             'failures.c:912,2'
          Dst:             i_internal_error_handler
        - Src:             'failures.c:913,2'
          Dst:             i_set_info_handler
        - Src:             'failures.c:913,2'
          Dst:             i_internal_error_handler
        - Src:             'failures.c:914,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:914,2'
          Dst:             i_internal_error_handler
    - functionName:    i_set_fatal_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_set_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getenv
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:618,22'
          Dst:             getenv
    - functionName:    i_set_info_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    line_parse_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 826
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - line
        - log_type_r
        - replace_prefix_r
        - have_prefix_len_r
      BBCount:         10
      ICount:          101
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - i_warning
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:827,6'
          Branch Sides:
            - BranchSide:      'failures.c:828,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:830,28'
              BranchSideFuncs:
                - i_warning
                - i_warning
        - Branch String:   'failures.c:831,6'
          Branch Sides:
            - BranchSide:      'failures.c:832,3'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'failures.c:835,10'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'failures.c:837,6'
          Branch Sides:
            - BranchSide:      'failures.c:838,50'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'failures.c:841,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:832,3'
          Dst:             i_warning
        - Src:             'failures.c:838,3'
          Dst:             i_warning
    - functionName:    i_warning
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:577,18'
          Dst:             __errno_location
        - Src:             'failures.c:584,2'
          Dst:             __errno_location
    - functionName:    i_failure_parse_line
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - line
        - failure
      BBCount:         26
      ICount:          164
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - line_parse_prefix
        - str_parse_uint
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:852,6'
          Branch Sides:
            - BranchSide:      'failures.c:855,3'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:860,7'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:862,22'
          Branch Sides:
            - BranchSide:      'failures.c:862,26'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:862,2'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:862,2'
          Branch Sides:
            - BranchSide:      'failures.c:863,18'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:866,7'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:866,6'
          Branch Sides:
            - BranchSide:      'failures.c:868,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:871,6'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
        - Branch String:   'failures.c:873,6'
          Branch Sides:
            - BranchSide:      'failures.c:874,22'
              BranchSideFuncs:
                - str_parse_uint
                - strlen
            - BranchSide:      'failures.c:885,18'
              BranchSideFuncs: []
        - Branch String:   'failures.c:874,65'
          Branch Sides:
            - BranchSide:      'failures.c:875,7'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:877,3'
              BranchSideFuncs: []
        - Branch String:   'failures.c:874,7'
          Branch Sides:
            - BranchSide:      'failures.c:877,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:878,8'
              BranchSideFuncs:
                - strlen
      Callsites:
        - Src:             'failures.c:852,7'
          Dst:             line_parse_prefix
        - Src:             'failures.c:874,7'
          Dst:             str_parse_uint
        - Src:             'failures.c:879,34'
          Dst:             strlen
    - functionName:    i_get_failure_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 770
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         4
      ICount:          17
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:771,9'
          Branch Sides:
            - BranchSide:      'failures.c:771,30'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:771,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_unset_failure_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup
        - p_free_internal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:764,2'
          Branch Sides:
            - BranchSide:      'failures.c:764,2'
              BranchSideFuncs:
                - p_free_internal.5647
                - i_strdup
            - BranchSide:      'failures.c:764,2'
              BranchSideFuncs:
                - p_free_internal.5647
                - i_strdup
      Callsites:
        - Src:             'failures.c:764,2'
          Dst:             p_free_internal
        - Src:             'failures.c:765,15'
          Dst:             i_strdup
    - functionName:    i_set_failure_prefix
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix_fmt
      BBCount:         11
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_strdup
        - log_prefix_sanitize
        - p_free_internal
        - t_pop
        - t_push
        - t_strdup_vprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'failures.c:756,4'
          Branch Sides:
            - BranchSide:      'failures.c:756,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'failures.c:756,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'failures.c:752,2'
          Dst:             p_free_internal
        - Src:             'failures.c:753,2'
          Dst:             t_push
        - Src:             'failures.c:755,4'
          Dst:             t_strdup_vprintf
        - Src:             'failures.c:754,25'
          Dst:             log_prefix_sanitize
        - Src:             'failures.c:754,16'
          Dst:             i_strdup
        - Src:             'failures.c:756,4'
          Dst:             t_pop
        - Src:             'failures.c:756,4'
          Dst:             i_panic
    - functionName:    i_set_failure_file
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - prefix
      BBCount:         21
      ICount:          102
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - close
        - default_error_handler
        - default_fatal_handler
        - i_error
        - i_set_debug_handler
        - i_set_error_handler
        - i_set_failure_prefix
        - i_set_fatal_handler
        - i_set_info_handler
        - log_fd_can_close
        - open_log_file
      functionUses:    0
      BranchProfiles:
        - Branch String:   'failures.c:708,36'
          Branch Sides:
            - BranchSide:      'failures.c:708,39'
              BranchSideFuncs:
                - log_fd_can_close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
                - close
                - i_error
            - BranchSide:      'failures.c:713,23'
              BranchSideFuncs:
                - log_fd_can_close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
        - Branch String:   'failures.c:708,6'
          Branch Sides:
            - BranchSide:      'failures.c:709,13'
              BranchSideFuncs:
                - close
                - log_fd_can_close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
                - i_error
            - BranchSide:      'failures.c:713,23'
              BranchSideFuncs:
                - log_fd_can_close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
        - Branch String:   'failures.c:709,7'
          Branch Sides:
            - BranchSide:      'failures.c:710,36'
              BranchSideFuncs:
                - i_error
                - log_fd_can_close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
            - BranchSide:      'failures.c:711,2'
              BranchSideFuncs:
                - log_fd_can_close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
        - Branch String:   'failures.c:713,37'
          Branch Sides:
            - BranchSide:      'failures.c:713,40'
              BranchSideFuncs:
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
            - BranchSide:      'failures.c:713,37'
              BranchSideFuncs:
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
        - Branch String:   'failures.c:713,68'
          Branch Sides:
            - BranchSide:      'failures.c:713,68'
              BranchSideFuncs:
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
            - BranchSide:      'failures.c:714,6'
              BranchSideFuncs:
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - close
                - i_error
        - Branch String:   'failures.c:713,6'
          Branch Sides:
            - BranchSide:      'failures.c:713,6'
              BranchSideFuncs:
                - close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - i_error
            - BranchSide:      'failures.c:715,13'
              BranchSideFuncs:
                - close
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
                - i_error
        - Branch String:   'failures.c:715,7'
          Branch Sides:
            - BranchSide:      'failures.c:716,36'
              BranchSideFuncs:
                - i_error
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
            - BranchSide:      'failures.c:717,2'
              BranchSideFuncs:
                - open_log_file
                - i_set_fatal_handler
                - i_set_error_handler
                - i_set_info_handler
                - i_set_debug_handler
      Callsites:
        - Src:             'failures.c:706,2'
          Dst:             i_set_failure_prefix
        - Src:             'failures.c:708,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:709,7'
          Dst:             close
        - Src:             'failures.c:710,4'
          Dst:             i_error
        - Src:             'failures.c:713,6'
          Dst:             log_fd_can_close
        - Src:             'failures.c:715,7'
          Dst:             close
        - Src:             'failures.c:716,4'
          Dst:             i_error
        - Src:             'failures.c:719,2'
          Dst:             open_log_file
        - Src:             'failures.c:725,2'
          Dst:             i_set_fatal_handler
        - Src:             'failures.c:725,2'
          Dst:             default_fatal_handler
        - Src:             'failures.c:726,2'
          Dst:             i_set_error_handler
        - Src:             'failures.c:726,2'
          Dst:             default_error_handler
        - Src:             'failures.c:727,2'
          Dst:             i_set_info_handler
        - Src:             'failures.c:727,2'
          Dst:             default_error_handler
        - Src:             'failures.c:728,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:728,2'
          Dst:             default_error_handler
    - functionName:    i_set_failure_syslog
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ident
        - options
        - facility
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_set_debug_handler
        - i_set_error_handler
        - i_set_fatal_handler
        - i_set_info_handler
        - i_strdup
        - i_syslog_error_handler
        - i_syslog_fatal_handler
        - openlog
        - p_free_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:663,2'
          Dst:             p_free_internal
        - Src:             'failures.c:664,17'
          Dst:             i_strdup
        - Src:             'failures.c:665,2'
          Dst:             openlog
        - Src:             'failures.c:667,2'
          Dst:             i_set_fatal_handler
        - Src:             'failures.c:667,2'
          Dst:             i_syslog_fatal_handler
        - Src:             'failures.c:668,2'
          Dst:             i_set_error_handler
        - Src:             'failures.c:668,2'
          Dst:             i_syslog_error_handler
        - Src:             'failures.c:669,2'
          Dst:             i_set_info_handler
        - Src:             'failures.c:669,2'
          Dst:             i_syslog_error_handler
        - Src:             'failures.c:670,2'
          Dst:             i_set_debug_handler
        - Src:             'failures.c:670,2'
          Dst:             i_syslog_error_handler
    - functionName:    openlog
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_syslog_fatal_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - fatal_handler_real
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:648,2'
          Dst:             fatal_handler_real
    - functionName:    i_syslog_error_handler
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - error_handler_real
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:656,2'
          Dst:             error_handler_real
    - functionName:    syslog_on_handler_failure
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - failure_exit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:189,2'
          Dst:             failure_exit
    - functionName:    i_get_failure_handlers
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 641
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fatal_callback_r
        - error_callback_r
        - info_callback_r
        - debug_callback_r
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_debug
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:601,18'
          Dst:             __errno_location
        - Src:             'failures.c:608,2'
          Dst:             __errno_location
    - functionName:    i_info
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:589,18'
          Dst:             __errno_location
        - Src:             'failures.c:596,2'
          Dst:             __errno_location
    - functionName:    i_log_typev
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
        - args
      BBCount:         7
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'failures.c:504,2'
          Branch Sides:
            - BranchSide:      'failures.c:506,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:509,3'
              BranchSideFuncs: []
            - BranchSide:      'failures.c:512,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_log_type
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - format
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_log_typev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:497,2'
          Dst:             i_log_typev
    - functionName:    i_fatal
      functionSourceFile: '/src/dovecot/src/lib/failures.c'
      linkageType:     externalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - lib_set_clean_exit
      functionUses:    81
      BranchProfiles:  []
      Callsites:
        - Src:             'failures.c:536,2'
          Dst:             lib_set_clean_exit
    - functionName:    i_close_fd_path
      functionSourceFile: '/src/dovecot/src/lib/fd-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - fd
        - path
        - arg
        - func
        - file
        - line
      BBCount:         20
      ICount:          138
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - close
        - i_error
        - i_panic
      functionUses:    19
      BranchProfiles:
        - Branch String:   'fd-util.c:149,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:150,3'
              BranchSideFuncs: []
            - BranchSide:      'fd-util.c:152,6'
              BranchSideFuncs:
                - __errno_location
                - close
                - __errno_location
                - i_error
                - __errno_location
                - i_panic
        - Branch String:   'fd-util.c:152,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:154,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'fd-util.c:160,16'
              BranchSideFuncs:
                - __errno_location
                - close
                - __errno_location
                - i_error
                - __errno_location
        - Branch String:   'fd-util.c:156,4'
          Branch Sides:
            - BranchSide:      'fd-util.c:156,26'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'fd-util.c:157,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'fd-util.c:164,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:164,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_error
            - BranchSide:      'fd-util.c:164,6'
              BranchSideFuncs:
                - __errno_location
                - i_error
        - Branch String:   'fd-util.c:164,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:166,4'
              BranchSideFuncs:
                - i_error
                - __errno_location
            - BranchSide:      'fd-util.c:170,10'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'fd-util.c:168,4'
          Branch Sides:
            - BranchSide:      'fd-util.c:168,26'
              BranchSideFuncs:
                - i_error
                - __errno_location
            - BranchSide:      'fd-util.c:169,4'
              BranchSideFuncs:
                - i_error
                - __errno_location
      Callsites:
        - Src:             'fd-util.c:153,3'
          Dst:             i_panic
        - Src:             'fd-util.c:160,16'
          Dst:             __errno_location
        - Src:             'fd-util.c:164,6'
          Dst:             close
        - Src:             'fd-util.c:164,6'
          Dst:             __errno_location
        - Src:             'fd-util.c:165,3'
          Dst:             i_error
        - Src:             'fd-util.c:170,2'
          Dst:             __errno_location
    - functionName:    fd_close_maybe_stdio
      functionSourceFile: '/src/dovecot/src/lib/fd-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd_in
        - fd_out
      BBCount:         19
      ICount:          127
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - dup2
        - i_close_fd_path
        - i_fatal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'fd-util.c:128,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:129,4'
              BranchSideFuncs:
                - dup2
                - i_fatal
                - i_close_fd_path
            - BranchSide:      'fd-util.c:131,20'
              BranchSideFuncs:
                - dup2
                - i_fatal
                - i_close_fd_path
        - Branch String:   'fd-util.c:131,2'
          Branch Sides:
            - BranchSide:      'fd-util.c:132,12'
              BranchSideFuncs:
                - dup2
                - i_fatal
                - i_close_fd_path
            - BranchSide:      'fd-util.c:141,1'
              BranchSideFuncs: []
        - Branch String:   'fd-util.c:132,7'
          Branch Sides:
            - BranchSide:      'fd-util.c:134,17'
              BranchSideFuncs:
                - dup2
                - i_fatal
                - i_close_fd_path
            - BranchSide:      'fd-util.c:140,2'
              BranchSideFuncs:
                - dup2
                - i_fatal
                - i_close_fd_path
        - Branch String:   'fd-util.c:134,12'
          Branch Sides:
            - BranchSide:      'fd-util.c:135,4'
              BranchSideFuncs:
                - i_close_fd_path
                - dup2
                - i_fatal
            - BranchSide:      'fd-util.c:136,17'
              BranchSideFuncs:
                - dup2
                - i_fatal
                - i_close_fd_path
        - Branch String:   'fd-util.c:136,12'
          Branch Sides:
            - BranchSide:      'fd-util.c:137,9'
              BranchSideFuncs:
                - dup2
                - i_fatal
                - i_close_fd_path
            - BranchSide:      'fd-util.c:139,51'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'fd-util.c:135,4'
          Dst:             i_close_fd_path
        - Src:             'fd-util.c:136,12'
          Dst:             dup2
        - Src:             'fd-util.c:139,4'
          Dst:             i_fatal
    - functionName:    dup2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fd_set_nonblock
      functionSourceFile: '/src/dovecot/src/lib/fd-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - fd
        - nonblock
      BBCount:         14
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - fcntl
        - i_fatal
        - i_panic
      functionUses:    6
      BranchProfiles:
        - Branch String:   'fd-util.c:109,2'
          Branch Sides:
            - BranchSide:      'fd-util.c:109,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'fd-util.c:111,16'
              BranchSideFuncs:
                - fcntl
                - fcntl
                - i_fatal
                - i_fatal
        - Branch String:   'fd-util.c:112,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:113,44'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'fd-util.c:115,6'
              BranchSideFuncs:
                - fcntl
                - i_fatal
        - Branch String:   'fd-util.c:115,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:116,9'
              BranchSideFuncs:
                - fcntl
                - i_fatal
            - BranchSide:      'fd-util.c:118,9'
              BranchSideFuncs:
                - fcntl
                - i_fatal
        - Branch String:   'fd-util.c:120,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:121,44'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'fd-util.c:122,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'fd-util.c:109,2'
          Dst:             i_panic
        - Src:             'fd-util.c:111,10'
          Dst:             fcntl
        - Src:             'fd-util.c:113,3'
          Dst:             i_fatal
        - Src:             'fd-util.c:120,6'
          Dst:             fcntl
        - Src:             'fd-util.c:121,3'
          Dst:             i_fatal
    - functionName:    fcntl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fd_debug_verify_leaks
      functionSourceFile: '/src/dovecot/src/lib/fd-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - first_fd
        - last_fd
      BBCount:         29
      ICount:          198
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - dec2str
        - fcntl
        - fstat
        - getsockname
        - gnu_dev_major
        - gnu_dev_minor
        - i_error
        - i_fatal
        - net_getpeername
        - net_getsockname
        - net_ip2addr
        - strerror
        - t_readlink
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'fd-util.c:33,2'
          Branch Sides:
            - BranchSide:      'fd-util.c:34,13'
              BranchSideFuncs:
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - i_fatal
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
                - __errno_location
            - BranchSide:      'fd-util.c:101,6'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'fd-util.c:34,35'
          Branch Sides:
            - BranchSide:      'fd-util.c:34,38'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - i_fatal
                - fcntl
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
            - BranchSide:      'fd-util.c:37,15'
              BranchSideFuncs:
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
        - Branch String:   'fd-util.c:34,7'
          Branch Sides:
            - BranchSide:      'fd-util.c:35,4'
              BranchSideFuncs:
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
                - __errno_location
            - BranchSide:      'fd-util.c:37,15'
              BranchSideFuncs:
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
        - Branch String:   'fd-util.c:39,7'
          Branch Sides:
            - BranchSide:      'fd-util.c:40,13'
              BranchSideFuncs:
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - __errno_location
                - getsockname
                - i_error
            - BranchSide:      'fd-util.c:66,13'
              BranchSideFuncs:
                - fstat
                - strerror
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
                - __errno_location
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
        - Branch String:   'fd-util.c:40,8'
          Branch Sides:
            - BranchSide:      'fd-util.c:43,15'
              BranchSideFuncs:
                - getsockname
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - __errno_location
            - BranchSide:      'fd-util.c:55,24'
              BranchSideFuncs:
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - getsockname
                - i_error
                - __errno_location
        - Branch String:   'fd-util.c:45,9'
          Branch Sides:
            - BranchSide:      'fd-util.c:47,9'
              BranchSideFuncs:
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - __errno_location
            - BranchSide:      'fd-util.c:50,6'
              BranchSideFuncs:
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - __errno_location
        - Branch String:   'fd-util.c:55,8'
          Branch Sides:
            - BranchSide:      'fd-util.c:56,5'
              BranchSideFuncs:
                - net_ip2addr
                - net_ip2addr
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - getsockname
                - i_error
                - __errno_location
            - BranchSide:      'fd-util.c:60,5'
              BranchSideFuncs:
                - net_ip2addr
                - net_ip2addr
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - getsockname
                - i_error
                - __errno_location
        - Branch String:   'fd-util.c:66,7'
          Branch Sides:
            - BranchSide:      'fd-util.c:69,55'
              BranchSideFuncs:
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'fd-util.c:97,4'
              BranchSideFuncs:
                - strerror
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - t_strdup_printf
                - t_readlink
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
                - __errno_location
        - Branch String:   'fd-util.c:69,8'
          Branch Sides:
            - BranchSide:      'fd-util.c:71,44'
              BranchSideFuncs:
                - t_strdup_printf
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
                - __errno_location
            - BranchSide:      'fd-util.c:83,5'
              BranchSideFuncs:
                - gnu_dev_major
                - dec2str
                - gnu_dev_minor
                - dec2str
                - dec2str
                - i_error
                - i_fatal
                - fcntl
                - __errno_location
                - net_getsockname
                - fstat
                - strerror
                - i_error
                - t_strdup_printf
                - t_readlink
                - t_strdup_printf
                - net_getpeername
                - net_ip2addr
                - net_ip2addr
                - i_error
                - getsockname
                - i_error
                - __errno_location
        - Branch String:   'fd-util.c:101,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:102,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'fd-util.c:103,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'fd-util.c:34,7'
          Dst:             fcntl
        - Src:             'fd-util.c:34,38'
          Dst:             __errno_location
        - Src:             'fd-util.c:37,15'
          Dst:             __errno_location
        - Src:             'fd-util.c:39,7'
          Dst:             net_getsockname
        - Src:             'fd-util.c:45,9'
          Dst:             getsockname
        - Src:             'fd-util.c:49,5'
          Dst:             i_error
        - Src:             'fd-util.c:55,8'
          Dst:             net_getpeername
        - Src:             'fd-util.c:60,9'
          Dst:             net_ip2addr
        - Src:             'fd-util.c:61,5'
          Dst:             net_ip2addr
        - Src:             'fd-util.c:59,4'
          Dst:             i_error
        - Src:             'fd-util.c:66,7'
          Dst:             fstat
        - Src:             'fd-util.c:69,19'
          Dst:             t_strdup_printf
        - Src:             'fd-util.c:69,8'
          Dst:             t_readlink
        - Src:             'fd-util.c:71,13'
          Dst:             t_strdup_printf
        - Src:             'fd-util.c:83,24'
          Dst:             gnu_dev_major
        - Src:             'fd-util.c:83,16'
          Dst:             dec2str
        - Src:             'fd-util.c:84,13'
          Dst:             gnu_dev_minor
        - Src:             'fd-util.c:84,5'
          Dst:             dec2str
        - Src:             'fd-util.c:84,32'
          Dst:             dec2str
        - Src:             'fd-util.c:82,4'
          Dst:             i_error
        - Src:             'fd-util.c:97,8'
          Dst:             strerror
        - Src:             'fd-util.c:96,3'
          Dst:             i_error
        - Src:             'fd-util.c:102,3'
          Dst:             i_fatal
    - functionName:    getsockname
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gnu_dev_major
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gnu_dev_minor
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fd_close_on_exec
      functionSourceFile: '/src/dovecot/src/lib/fd-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - fd
        - set
      BBCount:         10
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - fcntl
        - i_fatal
      functionUses:    7
      BranchProfiles:
        - Branch String:   'fd-util.c:17,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:18,44'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'fd-util.c:20,10'
              BranchSideFuncs:
                - fcntl
                - i_fatal
        - Branch String:   'fd-util.c:20,10'
          Branch Sides:
            - BranchSide:      'fd-util.c:20,17'
              BranchSideFuncs:
                - fcntl
                - i_fatal
            - BranchSide:      'fd-util.c:20,40'
              BranchSideFuncs:
                - fcntl
                - i_fatal
        - Branch String:   'fd-util.c:21,6'
          Branch Sides:
            - BranchSide:      'fd-util.c:22,44'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'fd-util.c:23,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'fd-util.c:16,10'
          Dst:             fcntl
        - Src:             'fd-util.c:18,3'
          Dst:             i_fatal
        - Src:             'fd-util.c:21,6'
          Dst:             fcntl
        - Src:             'fd-util.c:22,3'
          Dst:             i_fatal
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    guid_128_from_uuid_string
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - guid_r
      BBCount:         36
      ICount:          194
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - guid_128_from_string
        - i_panic
        - str_append_c
        - str_c
        - strlen
        - t_pop
        - t_push
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'guid.c:169,3'
          Branch Sides:
            - BranchSide:      'guid.c:171,8'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:178,36'
              BranchSideFuncs:
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:171,13'
          Branch Sides:
            - BranchSide:      'guid.c:171,16'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:172,13'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:171,8'
          Branch Sides:
            - BranchSide:      'guid.c:171,34'
              BranchSideFuncs:
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
                - str_append_c.5742
            - BranchSide:      'guid.c:172,13'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:174,18'
          Branch Sides:
            - BranchSide:      'guid.c:174,22'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:175,8'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:174,31'
          Branch Sides:
            - BranchSide:      'guid.c:174,35'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:175,8'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:174,44'
          Branch Sides:
            - BranchSide:      'guid.c:174,48'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:175,8'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:174,58'
          Branch Sides:
            - BranchSide:      'guid.c:175,8'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
            - BranchSide:      'guid.c:176,4'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:174,8'
          Branch Sides:
            - BranchSide:      'guid.c:175,23'
              BranchSideFuncs:
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
                - str_append_c.5742
            - BranchSide:      'guid.c:176,4'
              BranchSideFuncs:
                - str_append_c.5742
                - str_c
                - guid_128_from_string
                - t_pop
                - i_panic
        - Branch String:   'guid.c:179,4'
          Branch Sides:
            - BranchSide:      'guid.c:179,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'guid.c:179,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'guid.c:166,2'
          Dst:             t_push
        - Src:             'guid.c:167,9'
          Dst:             strlen
        - Src:             'guid.c:168,20'
          Dst:             t_str_new
        - Src:             'guid.c:176,4'
          Dst:             str_append_c
        - Src:             'guid.c:178,30'
          Dst:             str_c
        - Src:             'guid.c:178,9'
          Dst:             guid_128_from_string
        - Src:             'guid.c:179,4'
          Dst:             t_pop
        - Src:             'guid.c:179,4'
          Dst:             i_panic
    - functionName:    guid_128_from_string
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - guid_r
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_create_from_data
        - hex_to_binary
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'guid.c:125,40'
          Branch Sides:
            - BranchSide:      'guid.c:125,40'
              BranchSideFuncs:
                - hex_to_binary
            - BranchSide:      'guid.c:126,17'
              BranchSideFuncs:
                - hex_to_binary
        - Branch String:   'guid.c:126,33'
          Branch Sides:
            - BranchSide:      'guid.c:126,33'
              BranchSideFuncs: []
            - BranchSide:      'guid.c:127,7'
              BranchSideFuncs: []
      Callsites:
        - Src:             'guid.c:124,2'
          Dst:             buffer_create_from_data
        - Src:             'guid.c:125,9'
          Dst:             strlen
        - Src:             'guid.c:126,3'
          Dst:             hex_to_binary
    - functionName:    guid_128_to_uuid_string
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - guid
        - format
      BBCount:         8
      ICount:          113
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - guid_128_to_string
        - guid_128_to_uuid_string
        - i_unreached
        - t_strdup_printf
      functionUses:    4
      BranchProfiles:
        - Branch String:   'guid.c:147,2'
          Branch Sides:
            - BranchSide:      'guid.c:149,29'
              BranchSideFuncs:
                - guid_128_to_string
            - BranchSide:      'guid.c:152,5'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'guid.c:157,58'
              BranchSideFuncs:
                - guid_128_to_uuid_string
                - t_strdup_printf
            - BranchSide:      'guid.c:159,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'guid.c:149,10'
          Dst:             guid_128_to_string
        - Src:             'guid.c:151,10'
          Dst:             t_strdup_printf
        - Src:             'guid.c:157,34'
          Dst:             guid_128_to_uuid_string
        - Src:             'guid.c:157,10'
          Dst:             t_strdup_printf
        - Src:             'guid.c:159,2'
          Dst:             i_unreached
    - functionName:    guid_128_to_string
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - guid
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - binary_to_hex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'guid.c:132,9'
          Dst:             binary_to_hex
    - functionName:    guid_128_cmp
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - guid1
        - guid2
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'guid.c:142,9'
          Dst:             memcmp
    - functionName:    guid_128_hash
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - guid
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mem_hash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'guid.c:137,9'
          Dst:             mem_hash
    - functionName:    guid_128_equals
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - guid1
        - guid2
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'guid.c:117,9'
          Dst:             memcmp
    - functionName:    guid_128_is_empty
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - guid
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'guid.c:108,2'
          Branch Sides:
            - BranchSide:      'guid.c:109,7'
              BranchSideFuncs: []
            - BranchSide:      'guid.c:112,2'
              BranchSideFuncs: []
        - Branch String:   'guid.c:109,7'
          Branch Sides:
            - BranchSide:      'guid.c:110,4'
              BranchSideFuncs: []
            - BranchSide:      'guid.c:111,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    guid_128_uuid4_generate
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - uuid
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_fill
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'guid.c:99,2'
          Dst:             random_fill
    - functionName:    guid_128_generate
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - guid_r
      BBCount:         20
      ICount:          172
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - clock_gettime
        - getpid
        - guid_128_host_hash_get
        - i_fatal
        - i_memcpy
        - my_hostdomain
      functionUses:    2
      BranchProfiles:
        - Branch String:   'guid.c:61,6'
          Branch Sides:
            - BranchSide:      'guid.c:62,7'
              BranchSideFuncs:
                - clock_gettime
                - getpid
                - my_hostdomain
                - guid_128_host_hash_get
                - i_memcpy.5758
                - i_fatal
            - BranchSide:      'guid.c:71,28'
              BranchSideFuncs:
                - i_memcpy.5758
        - Branch String:   'guid.c:62,7'
          Branch Sides:
            - BranchSide:      'guid.c:63,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'guid.c:64,9'
              BranchSideFuncs:
                - getpid
                - my_hostdomain
                - guid_128_host_hash_get
                - i_memcpy.5758
        - Branch String:   'guid.c:71,47'
          Branch Sides:
            - BranchSide:      'guid.c:72,22'
              BranchSideFuncs:
                - i_memcpy.5758
            - BranchSide:      'guid.c:77,30'
              BranchSideFuncs:
                - i_memcpy.5758
        - Branch String:   'guid.c:72,42'
          Branch Sides:
            - BranchSide:      'guid.c:73,22'
              BranchSideFuncs:
                - i_memcpy.5758
            - BranchSide:      'guid.c:79,16'
              BranchSideFuncs:
                - i_memcpy.5758
        - Branch String:   'guid.c:71,13'
          Branch Sides:
            - BranchSide:      'guid.c:77,30'
              BranchSideFuncs:
                - i_memcpy.5758
            - BranchSide:      'guid.c:79,16'
              BranchSideFuncs:
                - i_memcpy.5758
        - Branch String:   'guid.c:79,13'
          Branch Sides:
            - BranchSide:      'guid.c:80,13'
              BranchSideFuncs:
                - i_memcpy.5758
            - BranchSide:      'guid.c:82,12'
              BranchSideFuncs:
                - i_memcpy.5758
      Callsites:
        - Src:             'guid.c:62,7'
          Dst:             clock_gettime
        - Src:             'guid.c:63,4'
          Dst:             i_fatal
        - Src:             'guid.c:64,9'
          Dst:             getpid
        - Src:             'guid.c:70,26'
          Dst:             my_hostdomain
        - Src:             'guid.c:70,3'
          Dst:             guid_128_host_hash_get
        - Src:             'guid.c:94,2'
          Dst:             i_memcpy
    - functionName:    clock_gettime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    guid_128_host_hash_get
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - host
        - hash_r
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_memcpy
        - sha1_get_digest
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'guid.c:45,24'
          Dst:             strlen
        - Src:             'guid.c:45,2'
          Dst:             sha1_get_digest
        - Src:             'guid.c:46,2'
          Dst:             i_memcpy
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    guid_generate
      functionSourceFile: '/src/dovecot/src/lib/guid.c'
      linkageType:     externalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - clock_gettime
        - getpid
        - i_fatal
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'guid.c:24,9'
          Branch Sides:
            - BranchSide:      'guid.c:24,9'
              BranchSideFuncs:
                - t_strdup_printf
                - clock_gettime
                - getpid
                - i_fatal
            - BranchSide:      'guid.c:24,9'
              BranchSideFuncs:
                - t_strdup_printf
                - clock_gettime
                - getpid
                - i_fatal
        - Branch String:   'guid.c:24,6'
          Branch Sides:
            - BranchSide:      'guid.c:25,7'
              BranchSideFuncs:
                - clock_gettime
                - getpid
                - t_strdup_printf
                - i_fatal
            - BranchSide:      'guid.c:28,26'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'guid.c:25,7'
          Branch Sides:
            - BranchSide:      'guid.c:26,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'guid.c:27,9'
              BranchSideFuncs:
                - getpid
                - t_strdup_printf
        - Branch String:   'guid.c:28,13'
          Branch Sides:
            - BranchSide:      'guid.c:29,13'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'guid.c:31,12'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'guid.c:25,7'
          Dst:             clock_gettime
        - Src:             'guid.c:26,4'
          Dst:             i_fatal
        - Src:             'guid.c:27,9'
          Dst:             getpid
        - Src:             'guid.c:34,9'
          Dst:             t_strdup_printf
    - functionName:    free_node
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - node
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:103,6'
          Branch Sides:
            - BranchSide:      'hash.c:104,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:106,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:104,3'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    strfastcase_hash
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - p
      BBCount:         7
      ICount:          64
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hash.c:583,2'
          Branch Sides:
            - BranchSide:      'hash.c:584,8'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:592,9'
              BranchSideFuncs: []
        - Branch String:   'hash.c:585,7'
          Branch Sides:
            - BranchSide:      'hash.c:586,8'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:589,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    mem_hash
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - p
        - size
      BBCount:         8
      ICount:          75
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hash.c:566,2'
          Branch Sides:
            - BranchSide:      'hash.c:567,8'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:574,9'
              BranchSideFuncs: []
        - Branch String:   'hash.c:568,7'
          Branch Sides:
            - BranchSide:      'hash.c:569,8'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:572,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    strcase_hash
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - p
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - toupper
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hash.c:548,2'
          Branch Sides:
            - BranchSide:      'hash.c:549,8'
              BranchSideFuncs:
                - toupper
            - BranchSide:      'hash.c:557,9'
              BranchSideFuncs: []
        - Branch String:   'hash.c:550,7'
          Branch Sides:
            - BranchSide:      'hash.c:551,8'
              BranchSideFuncs:
                - toupper
            - BranchSide:      'hash.c:554,4'
              BranchSideFuncs:
                - toupper
      Callsites:
        - Src:             'hash.c:549,18'
          Dst:             toupper
    - functionName:    str_hash
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - p
      BBCount:         7
      ICount:          63
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hash.c:529,2'
          Branch Sides:
            - BranchSide:      'hash.c:530,8'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:538,9'
              BranchSideFuncs: []
        - Branch String:   'hash.c:531,7'
          Branch Sides:
            - BranchSide:      'hash.c:532,8'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:535,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_table_copy
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_freeze
        - hash_table_insert
        - hash_table_iterate
        - hash_table_iterate_deinit
        - hash_table_iterate_init
        - hash_table_thaw
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hash.c:515,2'
          Branch Sides:
            - BranchSide:      'hash.c:516,21'
              BranchSideFuncs:
                - hash_table_insert
                - hash_table_iterate
                - hash_table_iterate_deinit
                - hash_table_thaw
            - BranchSide:      'hash.c:517,2'
              BranchSideFuncs:
                - hash_table_iterate_deinit
                - hash_table_thaw
      Callsites:
        - Src:             'hash.c:512,2'
          Dst:             hash_table_freeze
        - Src:             'hash.c:514,9'
          Dst:             hash_table_iterate_init
        - Src:             'hash.c:515,9'
          Dst:             hash_table_iterate
        - Src:             'hash.c:516,3'
          Dst:             hash_table_insert
        - Src:             'hash.c:517,2'
          Dst:             hash_table_iterate_deinit
        - Src:             'hash.c:519,2'
          Dst:             hash_table_thaw
    - functionName:    hash_table_freeze
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_table_iterate_init
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_table_freeze
        - malloc_multiply_check
        - p_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hash.c:375,2'
          Dst:             hash_table_freeze
        - Src:             'hash.c:377,8'
          Dst:             malloc_multiply_check
        - Src:             'hash.c:377,8'
          Dst:             p_malloc
    - functionName:    hash_table_iterate
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - key_r
        - value_r
      BBCount:         11
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - hash_table_iterate_next
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:407,19'
          Branch Sides:
            - BranchSide:      'hash.c:407,22'
              BranchSideFuncs:
                - hash_table_iterate_next
                - hash_table_iterate_next
            - BranchSide:      'hash.c:409,6'
              BranchSideFuncs:
                - hash_table_iterate_next
        - Branch String:   'hash.c:407,6'
          Branch Sides:
            - BranchSide:      'hash.c:408,34'
              BranchSideFuncs:
                - hash_table_iterate_next
                - hash_table_iterate_next
            - BranchSide:      'hash.c:409,6'
              BranchSideFuncs:
                - hash_table_iterate_next
        - Branch String:   'hash.c:409,6'
          Branch Sides:
            - BranchSide:      'hash.c:410,13'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:413,11'
              BranchSideFuncs:
                - hash_table_iterate_next
      Callsites:
        - Src:             'hash.c:408,10'
          Dst:             hash_table_iterate_next
        - Src:             'hash.c:416,14'
          Dst:             hash_table_iterate_next
    - functionName:    hash_table_insert
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - key
        - value
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_table_insert_node
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hash.c:300,2'
          Dst:             hash_table_insert_node
    - functionName:    hash_table_iterate_deinit
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ctx
      BBCount:         7
      ICount:          41
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_thaw
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:424,6'
          Branch Sides:
            - BranchSide:      'hash.c:425,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:427,3'
              BranchSideFuncs:
                - hash_table_thaw
                - p_free_internal.5842
      Callsites:
        - Src:             'hash.c:428,2'
          Dst:             hash_table_thaw
        - Src:             'hash.c:429,2'
          Dst:             p_free_internal
    - functionName:    hash_table_thaw
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         15
      ICount:          69
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - hash_table_compress_removed
        - hash_table_resize
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hash.c:439,2'
          Branch Sides:
            - BranchSide:      'hash.c:439,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:441,8'
              BranchSideFuncs:
                - hash_table_resize
                - hash_table_compress_removed
        - Branch String:   'hash.c:441,6'
          Branch Sides:
            - BranchSide:      'hash.c:442,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:444,6'
              BranchSideFuncs:
                - hash_table_resize
                - hash_table_compress_removed
        - Branch String:   'hash.c:444,6'
          Branch Sides:
            - BranchSide:      'hash.c:444,6'
              BranchSideFuncs:
                - hash_table_resize
                - hash_table_compress_removed
            - BranchSide:      'hash.c:445,26'
              BranchSideFuncs:
                - hash_table_resize
                - hash_table_compress_removed
        - Branch String:   'hash.c:445,7'
          Branch Sides:
            - BranchSide:      'hash.c:446,32'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:447,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:439,2'
          Dst:             i_panic
        - Src:             'hash.c:445,8'
          Dst:             hash_table_resize
        - Src:             'hash.c:446,4'
          Dst:             hash_table_compress_removed
    - functionName:    hash_table_resize
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - table
        - grow
      BBCount:         42
      ICount:          295
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - free_node
        - hash_table_insert_node
        - i_panic
        - malloc_multiply_check
        - p_free_internal
        - p_malloc
        - primes_closest
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:456,2'
          Branch Sides:
            - BranchSide:      'hash.c:456,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:458,27'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
                - primes_closest
        - Branch String:   'hash.c:459,27'
          Branch Sides:
            - BranchSide:      'hash.c:459,30'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
                - primes_closest
            - BranchSide:      'hash.c:462,14'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
                - primes_closest
        - Branch String:   'hash.c:459,6'
          Branch Sides:
            - BranchSide:      'hash.c:460,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:462,14'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
                - primes_closest
        - Branch String:   'hash.c:462,14'
          Branch Sides:
            - BranchSide:      'hash.c:462,12'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:462,12'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
        - Branch String:   'hash.c:464,6'
          Branch Sides:
            - BranchSide:      'hash.c:465,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:467,6'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
        - Branch String:   'hash.c:467,11'
          Branch Sides:
            - BranchSide:      'hash.c:467,14'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:471,13'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
        - Branch String:   'hash.c:467,6'
          Branch Sides:
            - BranchSide:      'hash.c:468,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:471,13'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
        - Branch String:   'hash.c:474,16'
          Branch Sides:
            - BranchSide:      'hash.c:474,2'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:474,2'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
        - Branch String:   'hash.c:483,2'
          Branch Sides:
            - BranchSide:      'hash.c:484,11'
              BranchSideFuncs:
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:501,2'
              BranchSideFuncs:
                - p_free_internal.5842
        - Branch String:   'hash.c:485,7'
          Branch Sides:
            - BranchSide:      'hash.c:486,27'
              BranchSideFuncs:
                - hash_table_insert_node
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:490,15'
              BranchSideFuncs:
                - p_free_internal.5842
                - hash_table_insert_node
                - free_node
                - hash_table_insert_node
        - Branch String:   'hash.c:490,3'
          Branch Sides:
            - BranchSide:      'hash.c:491,11'
              BranchSideFuncs:
                - free_node
                - p_free_internal.5842
                - hash_table_insert_node
                - hash_table_insert_node
            - BranchSide:      'hash.c:499,2'
              BranchSideFuncs:
                - p_free_internal.5842
                - free_node
                - hash_table_insert_node
                - hash_table_insert_node
        - Branch String:   'hash.c:493,8'
          Branch Sides:
            - BranchSide:      'hash.c:494,28'
              BranchSideFuncs:
                - hash_table_insert_node
                - free_node
                - p_free_internal.5842
                - hash_table_insert_node
            - BranchSide:      'hash.c:497,14'
              BranchSideFuncs:
                - free_node
                - p_free_internal.5842
                - hash_table_insert_node
                - hash_table_insert_node
      Callsites:
        - Src:             'hash.c:456,2'
          Dst:             i_panic
        - Src:             'hash.c:462,14'
          Dst:             primes_closest
        - Src:             'hash.c:462,14'
          Dst:             primes_closest
        - Src:             'hash.c:475,17'
          Dst:             malloc_multiply_check
        - Src:             'hash.c:475,17'
          Dst:             p_malloc
        - Src:             'hash.c:486,4'
          Dst:             hash_table_insert_node
        - Src:             'hash.c:494,5'
          Dst:             hash_table_insert_node
        - Src:             'hash.c:497,4'
          Dst:             free_node
        - Src:             'hash.c:503,2'
          Dst:             p_free_internal
    - functionName:    hash_table_compress_removed
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         7
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_compress
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hash.c:339,2'
          Branch Sides:
            - BranchSide:      'hash.c:340,23'
              BranchSideFuncs:
                - hash_table_compress
            - BranchSide:      'hash.c:342,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:340,3'
          Dst:             hash_table_compress
    - functionName:    hash_table_compress
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - root
      BBCount:         18
      ICount:          109
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - free_node
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hash.c:313,2'
          Branch Sides:
            - BranchSide:      'hash.c:313,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:316,14'
              BranchSideFuncs:
                - free_node
                - free_node
        - Branch String:   'hash.c:316,2'
          Branch Sides:
            - BranchSide:      'hash.c:317,10'
              BranchSideFuncs:
                - free_node
                - free_node
            - BranchSide:      'hash.c:328,6'
              BranchSideFuncs:
                - free_node
        - Branch String:   'hash.c:319,7'
          Branch Sides:
            - BranchSide:      'hash.c:320,17'
              BranchSideFuncs:
                - free_node
                - free_node
            - BranchSide:      'hash.c:323,11'
              BranchSideFuncs:
                - free_node
                - free_node
        - Branch String:   'hash.c:328,24'
          Branch Sides:
            - BranchSide:      'hash.c:328,27'
              BranchSideFuncs:
                - free_node
            - BranchSide:      'hash.c:328,24'
              BranchSideFuncs: []
        - Branch String:   'hash.c:328,6'
          Branch Sides:
            - BranchSide:      'hash.c:328,6'
              BranchSideFuncs:
                - free_node
            - BranchSide:      'hash.c:329,10'
              BranchSideFuncs:
                - free_node
      Callsites:
        - Src:             'hash.c:313,2'
          Dst:             i_panic
        - Src:             'hash.c:321,4'
          Dst:             free_node
        - Src:             'hash.c:331,3'
          Dst:             free_node
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    hash_table_insert_node
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - table
        - key
        - value
        - opcode
      BBCount:         63
      ICount:          388
      EdgeCount:       78
      CyclomaticComplexity: 17
      functionsReached:
        - hash_table_insert_node
        - hash_table_lookup_node
        - hash_table_resize
        - i_panic
        - malloc_multiply_check
        - p_malloc
      functionUses:    5
      BranchProfiles:
        - Branch String:   'hash.c:222,2'
          Branch Sides:
            - BranchSide:      'hash.c:222,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:223,2'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
                - hash_table_lookup_node
                - i_panic
                - i_panic
        - Branch String:   'hash.c:223,2'
          Branch Sides:
            - BranchSide:      'hash.c:223,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:225,5'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
                - hash_table_lookup_node
                - i_panic
        - Branch String:   'hash.c:225,5'
          Branch Sides:
            - BranchSide:      'hash.c:226,18'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
                - hash_table_lookup_node
                - i_panic
            - BranchSide:      'hash.c:227,9'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
                - hash_table_lookup_node
                - i_panic
        - Branch String:   'hash.c:229,21'
          Branch Sides:
            - BranchSide:      'hash.c:229,24'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
                - hash_table_lookup_node
                - i_panic
            - BranchSide:      'hash.c:242,10'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
        - Branch String:   'hash.c:229,6'
          Branch Sides:
            - BranchSide:      'hash.c:231,33'
              BranchSideFuncs:
                - hash_table_lookup_node
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'hash.c:242,10'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
        - Branch String:   'hash.c:232,7'
          Branch Sides:
            - BranchSide:      'hash.c:233,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:238,18'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
        - Branch String:   'hash.c:233,4'
          Branch Sides:
            - BranchSide:      'hash.c:233,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:234,18'
              BranchSideFuncs: []
        - Branch String:   'hash.c:243,6'
          Branch Sides:
            - BranchSide:      'hash.c:244,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:250,6'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
        - Branch String:   'hash.c:250,6'
          Branch Sides:
            - BranchSide:      'hash.c:251,7'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
                - i_panic
            - BranchSide:      'hash.c:259,9'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
        - Branch String:   'hash.c:251,7'
          Branch Sides:
            - BranchSide:      'hash.c:252,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:256,2'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
        - Branch String:   'hash.c:252,4'
          Branch Sides:
            - BranchSide:      'hash.c:252,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:253,18'
              BranchSideFuncs: []
        - Branch String:   'hash.c:260,2'
          Branch Sides:
            - BranchSide:      'hash.c:261,7'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
            - BranchSide:      'hash.c:275,6'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
        - Branch String:   'hash.c:261,7'
          Branch Sides:
            - BranchSide:      'hash.c:262,4'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
            - BranchSide:      'hash.c:264,7'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
        - Branch String:   'hash.c:264,7'
          Branch Sides:
            - BranchSide:      'hash.c:265,8'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
            - BranchSide:      'hash.c:271,10'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
        - Branch String:   'hash.c:265,8'
          Branch Sides:
            - BranchSide:      'hash.c:266,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:270,3'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
                - i_panic
        - Branch String:   'hash.c:266,5'
          Branch Sides:
            - BranchSide:      'hash.c:266,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:267,19'
              BranchSideFuncs: []
        - Branch String:   'hash.c:275,6'
          Branch Sides:
            - BranchSide:      'hash.c:276,7'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_resize
                - hash_table_insert_node
            - BranchSide:      'hash.c:292,14'
              BranchSideFuncs: []
        - Branch String:   'hash.c:276,26'
          Branch Sides:
            - BranchSide:      'hash.c:276,47'
              BranchSideFuncs:
                - hash_table_resize
                - malloc_multiply_check.5859
                - p_malloc.5860
                - hash_table_insert_node
            - BranchSide:      'hash.c:282,7'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
        - Branch String:   'hash.c:276,7'
          Branch Sides:
            - BranchSide:      'hash.c:278,27'
              BranchSideFuncs:
                - hash_table_insert_node
            - BranchSide:      'hash.c:282,7'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
        - Branch String:   'hash.c:282,7'
          Branch Sides:
            - BranchSide:      'hash.c:283,11'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
            - BranchSide:      'hash.c:285,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:222,2'
          Dst:             i_panic
        - Src:             'hash.c:223,2'
          Dst:             i_panic
        - Src:             'hash.c:231,10'
          Dst:             hash_table_lookup_node
        - Src:             'hash.c:233,4'
          Dst:             i_panic
        - Src:             'hash.c:252,4'
          Dst:             i_panic
        - Src:             'hash.c:266,5'
          Dst:             i_panic
        - Src:             'hash.c:276,29'
          Dst:             hash_table_resize
        - Src:             'hash.c:278,4'
          Dst:             hash_table_insert_node
        - Src:             'hash.c:283,11'
          Dst:             malloc_multiply_check
        - Src:             'hash.c:283,11'
          Dst:             p_malloc
    - functionName:    hash_table_lookup_node
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - table
        - key
        - hash
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'hash.c:180,7'
          Branch Sides:
            - BranchSide:      'hash.c:181,8'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:184,10'
              BranchSideFuncs: []
        - Branch String:   'hash.c:181,8'
          Branch Sides:
            - BranchSide:      'hash.c:182,12'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:183,3'
              BranchSideFuncs: []
        - Branch String:   'hash.c:185,2'
          Branch Sides:
            - BranchSide:      'hash.c:180,7'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:187,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_table_iterate_next
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - node
      BBCount:         11
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hash.c:389,7'
          Branch Sides:
            - BranchSide:      'hash.c:390,10'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:396,2'
              BranchSideFuncs: []
        - Branch String:   'hash.c:390,8'
          Branch Sides:
            - BranchSide:      'hash.c:391,5'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:394,12'
              BranchSideFuncs: []
        - Branch String:   'hash.c:396,2'
          Branch Sides:
            - BranchSide:      'hash.c:388,10'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:398,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_table_count
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_table_try_remove
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - key
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - hash_table_compress
        - hash_table_lookup_node
        - hash_table_resize
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hash.c:353,6'
          Branch Sides:
            - BranchSide:      'hash.c:354,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:356,2'
              BranchSideFuncs:
                - hash_table_resize
                - hash_table_compress
        - Branch String:   'hash.c:359,6'
          Branch Sides:
            - BranchSide:      'hash.c:360,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:361,30'
              BranchSideFuncs:
                - hash_table_resize
                - hash_table_compress
      Callsites:
        - Src:             'hash.c:352,9'
          Dst:             hash_table_lookup_node
        - Src:             'hash.c:361,12'
          Dst:             hash_table_resize
        - Src:             'hash.c:362,3'
          Dst:             hash_table_compress
    - functionName:    hash_table_update
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - key
        - value
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_table_insert_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hash.c:305,2'
          Dst:             hash_table_insert_node
    - functionName:    hash_table_lookup_full
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - lookup_key
        - orig_key
        - value
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_lookup_node
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hash.c:206,6'
          Branch Sides:
            - BranchSide:      'hash.c:207,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:209,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:204,9'
          Dst:             hash_table_lookup_node
    - functionName:    hash_table_lookup
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - key
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_lookup_node
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:195,9'
          Branch Sides:
            - BranchSide:      'hash.c:195,24'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:195,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:194,9'
          Dst:             hash_table_lookup_node
    - functionName:    hash_table_clear
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - table
        - free_nodes
      BBCount:         16
      ICount:          102
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - destroy_node_list
        - hash_table_destroy_nodes
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hash.c:154,2'
          Branch Sides:
            - BranchSide:      'hash.c:154,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:156,7'
              BranchSideFuncs:
                - hash_table_destroy_nodes
                - destroy_node_list
        - Branch String:   'hash.c:156,6'
          Branch Sides:
            - BranchSide:      'hash.c:157,28'
              BranchSideFuncs:
                - destroy_node_list
            - BranchSide:      'hash.c:159,6'
              BranchSideFuncs:
                - destroy_node_list
        - Branch String:   'hash.c:159,6'
          Branch Sides:
            - BranchSide:      'hash.c:159,6'
              BranchSideFuncs:
                - destroy_node_list
            - BranchSide:      'hash.c:160,8'
              BranchSideFuncs:
                - destroy_node_list
        - Branch String:   'hash.c:160,7'
          Branch Sides:
            - BranchSide:      'hash.c:161,22'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:162,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:154,2'
          Dst:             i_panic
        - Src:             'hash.c:157,3'
          Dst:             hash_table_destroy_nodes
        - Src:             'hash.c:161,4'
          Dst:             destroy_node_list
    - functionName:    hash_table_destroy_nodes
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_node_list
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hash.c:126,2'
          Branch Sides:
            - BranchSide:      'hash.c:127,7'
              BranchSideFuncs:
                - destroy_node_list
            - BranchSide:      'hash.c:130,1'
              BranchSideFuncs: []
        - Branch String:   'hash.c:127,7'
          Branch Sides:
            - BranchSide:      'hash.c:128,22'
              BranchSideFuncs:
                - destroy_node_list
            - BranchSide:      'hash.c:129,2'
              BranchSideFuncs:
                - destroy_node_list
      Callsites:
        - Src:             'hash.c:128,4'
          Dst:             destroy_node_list
    - functionName:    destroy_node_list
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table
        - node
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:115,2'
          Branch Sides:
            - BranchSide:      'hash.c:116,10'
              BranchSideFuncs:
                - p_free_internal.5842
            - BranchSide:      'hash.c:120,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash.c:117,3'
          Dst:             p_free_internal
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:176,6'
          Branch Sides:
            - BranchSide:      './mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_table_destroy
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _table
      BBCount:         16
      ICount:          92
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_node_list
        - hash_table_destroy_nodes
        - i_panic
        - p_free_internal
        - pool_unref
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:136,6'
          Branch Sides:
            - BranchSide:      'hash.c:137,3'
              BranchSideFuncs: []
            - BranchSide:      'hash.c:138,3'
              BranchSideFuncs:
                - hash_table_destroy_nodes
                - destroy_node_list
                - pool_unref.5868
                - p_free_internal.5842
                - p_free_internal.5842
                - i_panic
        - Branch String:   'hash.c:140,2'
          Branch Sides:
            - BranchSide:      'hash.c:140,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash.c:142,7'
              BranchSideFuncs:
                - hash_table_destroy_nodes
                - destroy_node_list
                - pool_unref.5868
                - p_free_internal.5842
                - p_free_internal.5842
        - Branch String:   'hash.c:142,6'
          Branch Sides:
            - BranchSide:      'hash.c:143,28'
              BranchSideFuncs:
                - pool_unref.5868
                - p_free_internal.5842
                - p_free_internal.5842
            - BranchSide:      'hash.c:147,14'
              BranchSideFuncs:
                - pool_unref.5868
                - p_free_internal.5842
                - p_free_internal.5842
      Callsites:
        - Src:             'hash.c:140,2'
          Dst:             i_panic
        - Src:             'hash.c:143,3'
          Dst:             hash_table_destroy_nodes
        - Src:             'hash.c:144,3'
          Dst:             destroy_node_list
        - Src:             'hash.c:147,2'
          Dst:             pool_unref
        - Src:             'hash.c:148,2'
          Dst:             p_free_internal
        - Src:             'hash.c:149,2'
          Dst:             p_free_internal
    - functionName:    direct_cmp
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - p1
        - p2
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    direct_hash
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - p
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_table_create_direct
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - table_r
        - node_pool
        - initial_size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - direct_cmp
        - direct_hash
        - hash_table_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hash.c:97,2'
          Dst:             hash_table_create
        - Src:             'hash.c:97,2'
          Dst:             direct_hash
        - Src:             'hash.c:97,2'
          Dst:             direct_cmp
    - functionName:    hash_table_create
      functionSourceFile: '/src/dovecot/src/lib/hash.c'
      linkageType:     externalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - table_r
        - node_pool
        - initial_size
        - hash_cb
        - key_compare_cb
      BBCount:         6
      ICount:          86
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - malloc_multiply_check
        - p_malloc
        - pool_ref
        - primes_closest
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hash.c:73,3'
          Branch Sides:
            - BranchSide:      'hash.c:73,3'
              BranchSideFuncs:
                - primes_closest
                - malloc_multiply_check.5859
                - p_malloc.5860
            - BranchSide:      'hash.c:73,3'
              BranchSideFuncs:
                - malloc_multiply_check.5859
                - p_malloc.5860
      Callsites:
        - Src:             'hash.c:69,2'
          Dst:             pool_ref
        - Src:             'hash.c:70,10'
          Dst:             malloc_multiply_check
        - Src:             'hash.c:70,10'
          Dst:             p_malloc
        - Src:             'hash.c:73,3'
          Dst:             primes_closest
        - Src:             'hash.c:73,3'
          Dst:             primes_closest
        - Src:             'hash.c:79,17'
          Dst:             malloc_multiply_check
        - Src:             'hash.c:79,17'
          Dst:             p_malloc
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_method_result_size
      functionSourceFile: '/src/dovecot/src/lib/hash-method.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         1
      ICount:          77
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_method_loop_size
      functionSourceFile: '/src/dovecot/src/lib/hash-method.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_method_init_size
      functionSourceFile: '/src/dovecot/src/lib/hash-method.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    t_hash_data
      functionSourceFile: '/src/dovecot/src/lib/hash-method.c'
      linkageType:     externalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - meth
        - data
        - data_len
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
        - buffer_create_dynamic
        - hash_method_get_digest
        - i_panic
        - pool_datastack_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hash-method.c:67,2'
          Branch Sides:
            - BranchSide:      'hash-method.c:67,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash-method.c:67,2'
              BranchSideFuncs:
                - pool_datastack_create
                - buffer_create_dynamic
                - buffer_append_space_unsafe
                - hash_method_get_digest
      Callsites:
        - Src:             'hash-method.c:67,2'
          Dst:             i_panic
        - Src:             'hash-method.c:68,21'
          Dst:             pool_datastack_create
        - Src:             'hash-method.c:68,21'
          Dst:             buffer_create_dynamic
        - Src:             'hash-method.c:69,26'
          Dst:             buffer_append_space_unsafe
        - Src:             'hash-method.c:72,2'
          Dst:             hash_method_get_digest
    - functionName:    hash_method_get_digest
      functionSourceFile: '/src/dovecot/src/lib/hash-method.c'
      linkageType:     externalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - meth
        - data
        - data_len
        - result_r
      BBCount:         17
      ICount:          115
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hash-method.c:55,2'
          Branch Sides:
            - BranchSide:      'hash-method.c:55,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash-method.c:56,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'hash-method.c:56,2'
          Branch Sides:
            - BranchSide:      'hash-method.c:56,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash-method.c:56,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'hash-method.c:56,2'
          Branch Sides:
            - BranchSide:      'hash-method.c:56,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'hash-method.c:57,20'
              BranchSideFuncs: []
        - Branch String:   'hash-method.c:60,18'
          Branch Sides:
            - BranchSide:      'hash-method.c:60,18'
              BranchSideFuncs: []
            - BranchSide:      'hash-method.c:60,38'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hash-method.c:55,2'
          Dst:             i_panic
        - Src:             'hash-method.c:56,2'
          Dst:             i_panic
    - functionName:    hash_method_lookup
      functionSourceFile: '/src/dovecot/src/lib/hash-method.c'
      linkageType:     externalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 20
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hash-method.c:15,2'
          Branch Sides:
            - BranchSide:      'hash-method.c:16,27'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'hash-method.c:19,2'
              BranchSideFuncs: []
        - Branch String:   'hash-method.c:16,7'
          Branch Sides:
            - BranchSide:      'hash-method.c:17,24'
              BranchSideFuncs: []
            - BranchSide:      'hash-method.c:18,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'hash-method.c:16,7'
          Dst:             strcmp
    - functionName:    hex_to_binary
      functionSourceFile: '/src/dovecot/src/lib/hex-binary.c'
      linkageType:     externalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - dest
      BBCount:         43
      ICount:          239
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - buffer_append_c
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hex-binary.c:60,2'
          Branch Sides:
            - BranchSide:      'hex-binary.c:61,8'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:84,2'
              BranchSideFuncs: []
        - Branch String:   'hex-binary.c:61,20'
          Branch Sides:
            - BranchSide:      'hex-binary.c:61,24'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:63,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:61,7'
          Branch Sides:
            - BranchSide:      'hex-binary.c:62,14'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:63,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:63,25'
          Branch Sides:
            - BranchSide:      'hex-binary.c:63,29'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:65,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:63,12'
          Branch Sides:
            - BranchSide:      'hex-binary.c:64,14'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:65,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:65,25'
          Branch Sides:
            - BranchSide:      'hex-binary.c:65,29'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:68,4'
              BranchSideFuncs: []
        - Branch String:   'hex-binary.c:65,12'
          Branch Sides:
            - BranchSide:      'hex-binary.c:66,14'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:68,4'
              BranchSideFuncs: []
        - Branch String:   'hex-binary.c:71,20'
          Branch Sides:
            - BranchSide:      'hex-binary.c:71,24'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:73,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:71,7'
          Branch Sides:
            - BranchSide:      'hex-binary.c:72,14'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:73,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:73,25'
          Branch Sides:
            - BranchSide:      'hex-binary.c:73,29'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:75,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:73,12'
          Branch Sides:
            - BranchSide:      'hex-binary.c:74,14'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:75,13'
              BranchSideFuncs:
                - buffer_append_c
        - Branch String:   'hex-binary.c:75,25'
          Branch Sides:
            - BranchSide:      'hex-binary.c:75,29'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:78,4'
              BranchSideFuncs: []
        - Branch String:   'hex-binary.c:75,12'
          Branch Sides:
            - BranchSide:      'hex-binary.c:76,14'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'hex-binary.c:78,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'hex-binary.c:80,3'
          Dst:             buffer_append_c
    - functionName:    binary_to_hex_append
      functionSourceFile: '/src/dovecot/src/lib/hex-binary.c'
      linkageType:     externalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - data
        - size
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - binary_to_hex_case
        - buffer_append_space_unsafe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hex-binary.c:52,8'
          Dst:             buffer_append_space_unsafe
        - Src:             'hex-binary.c:53,2'
          Dst:             binary_to_hex_case
    - functionName:    binary_to_hex_case
      functionSourceFile: '/src/dovecot/src/lib/hex-binary.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - dest
        - data
        - size
        - ucase
      BBCount:         11
      ICount:          115
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'hex-binary.c:20,2'
          Branch Sides:
            - BranchSide:      'hex-binary.c:21,11'
              BranchSideFuncs: []
            - BranchSide:      'hex-binary.c:27,1'
              BranchSideFuncs: []
        - Branch String:   'hex-binary.c:22,10'
          Branch Sides:
            - BranchSide:      'hex-binary.c:22,23'
              BranchSideFuncs: []
            - BranchSide:      'hex-binary.c:22,37'
              BranchSideFuncs: []
        - Branch String:   'hex-binary.c:25,10'
          Branch Sides:
            - BranchSide:      'hex-binary.c:25,23'
              BranchSideFuncs: []
            - BranchSide:      'hex-binary.c:25,37'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    binary_to_hex_ucase
      functionSourceFile: '/src/dovecot/src/lib/hex-binary.c'
      linkageType:     externalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - binary_to_hex_case
        - malloc_multiply_check
        - t_malloc_no0
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hex-binary.c:40,37'
          Dst:             malloc_multiply_check
        - Src:             'hex-binary.c:40,24'
          Dst:             t_malloc_no0
        - Src:             'hex-binary.c:42,2'
          Dst:             binary_to_hex_case
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    binary_to_hex
      functionSourceFile: '/src/dovecot/src/lib/hex-binary.c'
      linkageType:     externalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - binary_to_hex_case
        - malloc_multiply_check
        - t_malloc_no0
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hex-binary.c:31,37'
          Dst:             malloc_multiply_check
        - Src:             'hex-binary.c:31,24'
          Dst:             t_malloc_no0
        - Src:             'hex-binary.c:33,2'
          Dst:             binary_to_hex_case
    - functionName:    my_hostdomain
      functionSourceFile: '/src/dovecot/src/lib/hostpid.c'
      linkageType:     externalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - freeaddrinfo
        - getaddrinfo
        - getenv
        - i_strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hostpid.c:54,24'
          Branch Sides:
            - BranchSide:      'hostpid.c:53,14'
              BranchSideFuncs:
                - getenv
                - getaddrinfo
                - i_strdup
                - i_strdup
                - freeaddrinfo
                - i_strdup
            - BranchSide:      'hostpid.c:54,24'
              BranchSideFuncs:
                - getenv
                - getaddrinfo
                - i_strdup
                - i_strdup
                - freeaddrinfo
                - i_strdup
        - Branch String:   'hostpid.c:61,6'
          Branch Sides:
            - BranchSide:      'hostpid.c:62,10'
              BranchSideFuncs: []
            - BranchSide:      'hostpid.c:64,9'
              BranchSideFuncs:
                - getenv
                - getaddrinfo
                - i_strdup
                - i_strdup
                - freeaddrinfo
                - i_strdup
        - Branch String:   'hostpid.c:65,6'
          Branch Sides:
            - BranchSide:      'hostpid.c:66,24'
              BranchSideFuncs:
                - i_strdup
            - BranchSide:      'hostpid.c:70,18'
              BranchSideFuncs:
                - getaddrinfo
                - i_strdup
                - i_strdup
                - freeaddrinfo
        - Branch String:   'hostpid.c:70,6'
          Branch Sides:
            - BranchSide:      'hostpid.c:71,24'
              BranchSideFuncs:
                - i_strdup
                - freeaddrinfo
            - BranchSide:      'hostpid.c:77,23'
              BranchSideFuncs:
                - i_strdup
      Callsites:
        - Src:             'hostpid.c:64,9'
          Dst:             getenv
        - Src:             'hostpid.c:66,15'
          Dst:             i_strdup
        - Src:             'hostpid.c:70,6'
          Dst:             getaddrinfo
        - Src:             'hostpid.c:71,15'
          Dst:             i_strdup
        - Src:             'hostpid.c:72,3'
          Dst:             freeaddrinfo
        - Src:             'hostpid.c:77,14'
          Dst:             i_strdup
    - 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:    3
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hostpid_deinit
      functionSourceFile: '/src/dovecot/src/lib/hostpid.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hostpid.c:47,2'
          Branch Sides:
            - BranchSide:      'hostpid.c:47,2'
              BranchSideFuncs:
                - p_free_internal.5938
                - p_free_internal.5938
            - BranchSide:      'hostpid.c:47,2'
              BranchSideFuncs:
                - p_free_internal.5938
                - p_free_internal.5938
      Callsites:
        - Src:             'hostpid.c:47,2'
          Dst:             p_free_internal
        - Src:             'hostpid.c:48,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hostpid_init
      functionSourceFile: '/src/dovecot/src/lib/hostpid.c'
      linkageType:     externalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         17
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - getenv
        - gethostname
        - getpid
        - i_fatal
        - i_snprintf
        - i_strdup
        - p_free_internal
        - strcspn
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hostpid.c:24,2'
          Branch Sides:
            - BranchSide:      'hostpid.c:20,7'
              BranchSideFuncs:
                - p_free_internal.5938
                - p_free_internal.5938
                - getenv
                - strcspn
                - strlen
                - i_strdup
                - getpid
                - i_snprintf
                - i_fatal
                - gethostname
                - i_fatal
            - BranchSide:      'hostpid.c:24,2'
              BranchSideFuncs:
                - p_free_internal.5938
                - p_free_internal.5938
                - getenv
                - strcspn
                - strlen
                - i_strdup
                - getpid
                - i_snprintf
                - i_fatal
                - gethostname
                - i_fatal
        - Branch String:   'hostpid.c:28,6'
          Branch Sides:
            - BranchSide:      'hostpid.c:29,19'
              BranchSideFuncs:
                - gethostname
                - strcspn
                - strlen
                - i_strdup
                - getpid
                - i_snprintf
                - i_fatal
                - i_fatal
            - BranchSide:      'hostpid.c:35,6'
              BranchSideFuncs:
                - strcspn
                - strlen
                - i_strdup
                - getpid
                - i_snprintf
                - i_fatal
        - Branch String:   'hostpid.c:29,7'
          Branch Sides:
            - BranchSide:      'hostpid.c:30,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'hostpid.c:31,3'
              BranchSideFuncs:
                - strcspn
                - strlen
                - i_strdup
                - getpid
                - i_snprintf
                - i_fatal
        - Branch String:   'hostpid.c:35,23'
          Branch Sides:
            - BranchSide:      'hostpid.c:36,14'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'hostpid.c:37,44'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'hostpid.c:35,6'
          Branch Sides:
            - BranchSide:      'hostpid.c:37,44'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'hostpid.c:38,29'
              BranchSideFuncs:
                - i_strdup
                - getpid
                - i_snprintf
      Callsites:
        - Src:             'hostpid.c:24,2'
          Dst:             p_free_internal
        - Src:             'hostpid.c:25,2'
          Dst:             p_free_internal
        - Src:             'hostpid.c:27,10'
          Dst:             getenv
        - Src:             'hostpid.c:29,7'
          Dst:             gethostname
        - Src:             'hostpid.c:30,4'
          Dst:             i_fatal
        - Src:             'hostpid.c:36,6'
          Dst:             strcspn
        - Src:             'hostpid.c:36,51'
          Dst:             strlen
        - Src:             'hostpid.c:37,3'
          Dst:             i_fatal
        - Src:             'hostpid.c:38,20'
          Dst:             i_strdup
        - Src:             'hostpid.c:41,50'
          Dst:             getpid
        - Src:             'hostpid.c:41,2'
          Dst:             i_snprintf
    - functionName:    gethostname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    i_strconcat
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str1
      BBCount:         13
      ICount:          81
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - i_memcpy
        - i_panic
        - p_malloc
        - t_buffer_alloc
        - t_pop
        - t_push
        - vstrconcat
      functionUses:    0
      BranchProfiles:
        - Branch String:   'imem.c:65,2'
          Branch Sides:
            - BranchSide:      'imem.c:65,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'imem.c:67,2'
              BranchSideFuncs:
                - t_push
                - vstrconcat
                - t_buffer_alloc
                - p_malloc.5986
                - i_memcpy.5976
                - t_pop
                - i_panic
        - Branch String:   'imem.c:74,4'
          Branch Sides:
            - BranchSide:      'imem.c:74,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'imem.c:74,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'imem.c:65,2'
          Dst:             i_panic
        - Src:             'imem.c:69,2'
          Dst:             t_push
        - Src:             'imem.c:70,22'
          Dst:             vstrconcat
        - Src:             'imem.c:71,3'
          Dst:             t_buffer_alloc
        - Src:             'imem.c:72,9'
          Dst:             p_malloc
        - Src:             'imem.c:73,3'
          Dst:             i_memcpy
        - Src:             'imem.c:74,4'
          Dst:             t_pop
        - Src:             'imem.c:74,4'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_strdup_vprintf
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
        - args
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup_vprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:56,9'
          Dst:             p_strdup_vprintf
    - functionName:    i_strdup_printf
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup_vprintf
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:49,8'
          Dst:             p_strdup_vprintf
    - functionName:    i_strndup
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - max_chars
      BBCount:         7
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - p_strndup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'imem.c:39,2'
          Branch Sides:
            - BranchSide:      'imem.c:39,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'imem.c:39,2'
              BranchSideFuncs:
                - p_strndup
      Callsites:
        - Src:             'imem.c:39,2'
          Dst:             i_panic
        - Src:             'imem.c:40,9'
          Dst:             p_strndup
    - functionName:    i_strdup_until
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - end
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup_until
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:34,9'
          Dst:             p_strdup_until
    - functionName:    i_strdup_empty
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:29,9'
          Dst:             p_strdup_empty
    - functionName:    i_memdup
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_memdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:24,9'
          Dst:             p_memdup
    - functionName:    i_strdup
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 19
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:19,9'
          Dst:             p_strdup
    - functionName:    p_realloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         11
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:131,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:133,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:133,6'
          Branch Sides:
            - BranchSide:      './mempool.h:134,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:136,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:130,3'
          Dst:             i_panic
    - functionName:    i_realloc
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 14
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - mem
        - old_size
        - new_size
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_realloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:14,9'
          Dst:             p_realloc
    - functionName:    i_malloc
      functionSourceFile: '/src/dovecot/src/lib/imem.c'
      linkageType:     externalLinkage
      functionLinenumber: 8
      functionLinenumberEnd: 9
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - size
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'imem.c:9,9'
          Dst:             p_malloc
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_get_ioloop
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'iostream.c:192,10'
          Branch Sides:
            - BranchSide:      'iostream.c:192,35'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:192,52'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_stream_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - ioloop
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_get_disconnect_reason
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - output
      BBCount:         21
      ICount:          111
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - i_stream_get_error
        - o_stream_get_error
        - t_strdup_printf
      functionUses:    4
      BranchProfiles:
        - Branch String:   'iostream.c:167,20'
          Branch Sides:
            - BranchSide:      'iostream.c:167,23'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - __errno_location
                - o_stream_get_error
                - __errno_location
                - i_stream_get_error
            - BranchSide:      'iostream.c:170,13'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - __errno_location
                - o_stream_get_error
        - Branch String:   'iostream.c:167,6'
          Branch Sides:
            - BranchSide:      'iostream.c:168,11'
              BranchSideFuncs:
                - __errno_location
                - i_stream_get_error
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'iostream.c:170,13'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - __errno_location
                - o_stream_get_error
        - Branch String:   'iostream.c:170,28'
          Branch Sides:
            - BranchSide:      'iostream.c:170,31'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - __errno_location
                - o_stream_get_error
            - BranchSide:      'iostream.c:174,3'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'iostream.c:170,13'
          Branch Sides:
            - BranchSide:      'iostream.c:171,11'
              BranchSideFuncs:
                - __errno_location
                - o_stream_get_error
                - __errno_location
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'iostream.c:174,3'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'iostream.c:178,17'
          Branch Sides:
            - BranchSide:      'iostream.c:178,20'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:179,3'
              BranchSideFuncs: []
        - Branch String:   'iostream.c:178,6'
          Branch Sides:
            - BranchSide:      'iostream.c:179,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:181,51'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'iostream.c:168,3'
          Dst:             __errno_location
        - Src:             'iostream.c:169,12'
          Dst:             i_stream_get_error
        - Src:             'iostream.c:171,3'
          Dst:             __errno_location
        - Src:             'iostream.c:172,12'
          Dst:             o_stream_get_error
        - Src:             'iostream.c:174,3'
          Dst:             __errno_location
        - Src:             'iostream.c:178,6'
          Dst:             __errno_location
        - Src:             'iostream.c:178,20'
          Dst:             __errno_location
        - Src:             'iostream.c:181,10'
          Dst:             t_strdup_printf
    - functionName:    io_stream_set_verror
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - fmt
        - args
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup_vprintf
        - p_free_internal
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream.c:157,16'
          Dst:             i_strdup_vprintf
        - Src:             'iostream.c:158,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_stream_set_error
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - fmt
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_set_verror
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream.c:148,2'
          Dst:             io_stream_set_verror
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:244,2'
          Dst:             buffer_delete
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    io_stream_remove_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - callback
      BBCount:         9
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - array_delete_i
        - array_get_i
        - i_unreached
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream.c:133,2'
          Branch Sides:
            - BranchSide:      'iostream.c:134,7'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.6078
            - BranchSide:      'iostream.c:139,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'iostream.c:134,7'
          Branch Sides:
            - BranchSide:      'iostream.c:135,4'
              BranchSideFuncs:
                - array_delete_i.6078
            - BranchSide:      'iostream.c:138,2'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.6078
      Callsites:
        - Src:             'iostream.c:132,8'
          Dst:             array_get_i
        - Src:             'iostream.c:135,4'
          Dst:             array_delete_i
        - Src:             'iostream.c:139,2'
          Dst:             i_unreached
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.6069
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.6069
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    io_stream_add_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - callback
        - context
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream.c:119,6'
          Branch Sides:
            - BranchSide:      'iostream.c:119,6'
              BranchSideFuncs:
                - array_append_space_i.6081
            - BranchSide:      'iostream.c:120,3'
              BranchSideFuncs:
                - array_create_i.6082
                - array_append_space_i.6081
      Callsites:
        - Src:             'iostream.c:119,7'
          Dst:             array_is_created_i
        - Src:             'iostream.c:120,3'
          Dst:             array_create_i
        - Src:             'iostream.c:121,7'
          Dst:             array_append_space_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - max_size
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_close
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    io_stream_free
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         16
      ICount:          98
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - array_free_i
        - array_is_created_i
        - p_free_internal
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream.c:92,6'
          Branch Sides:
            - BranchSide:      'iostream.c:93,3'
              BranchSideFuncs:
                - array_free_i.6084
                - p_free_internal.6075
                - p_free_internal.6075
                - p_free_internal.6075
            - BranchSide:      'iostream.c:98,9'
              BranchSideFuncs:
                - p_free_internal.6075
                - p_free_internal.6075
                - p_free_internal.6075
        - Branch String:   'iostream.c:93,3'
          Branch Sides:
            - BranchSide:      'iostream.c:94,4'
              BranchSideFuncs:
                - array_free_i.6084
                - p_free_internal.6075
                - p_free_internal.6075
                - p_free_internal.6075
            - BranchSide:      'iostream.c:95,3'
              BranchSideFuncs:
                - array_free_i.6084
                - p_free_internal.6075
                - p_free_internal.6075
                - p_free_internal.6075
      Callsites:
        - Src:             'iostream.c:92,6'
          Dst:             array_is_created_i
        - Src:             'iostream.c:95,3'
          Dst:             array_free_i
        - Src:             'iostream.c:98,9'
          Dst:             p_free_internal
        - Src:             'iostream.c:99,9'
          Dst:             p_free_internal
        - Src:             'iostream.c:100,9'
          Dst:             p_free_internal
    - functionName:    io_stream_unref
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         10
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'iostream.c:79,2'
          Branch Sides:
            - BranchSide:      'iostream.c:79,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream.c:80,8'
              BranchSideFuncs: []
        - Branch String:   'iostream.c:80,6'
          Branch Sides:
            - BranchSide:      'iostream.c:81,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:83,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream.c:79,2'
          Dst:             i_panic
    - functionName:    io_stream_ref
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream.c:72,2'
          Branch Sides:
            - BranchSide:      'iostream.c:72,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream.c:72,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream.c:72,2'
          Dst:             i_panic
    - functionName:    io_stream_default_destroy
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_default_close
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_stream_init
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream.c:61,6'
          Branch Sides:
            - BranchSide:      'iostream.c:62,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:63,6'
              BranchSideFuncs: []
        - Branch String:   'iostream.c:63,6'
          Branch Sides:
            - BranchSide:      'iostream.c:63,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:64,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_stream_create_fd_autoclose
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - max_in_buffer_size
        - max_out_buffer_size
        - input_r
        - output_r
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_fd_ref_autoclose
        - iostream_fd_init
        - iostream_fd_unref
        - o_stream_create_fd_ref_autoclose
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream.c:41,31'
          Dst:             iostream_fd_init
        - Src:             'iostream.c:42,13'
          Dst:             i_stream_create_fd_ref_autoclose
        - Src:             'iostream.c:43,14'
          Dst:             o_stream_create_fd_ref_autoclose
        - Src:             'iostream.c:44,2'
          Dst:             iostream_fd_unref
    - functionName:    iostream_fd_init
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 14
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - fd
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream.c:11,28'
          Dst:             malloc_multiply_check
        - Src:             'iostream.c:11,28'
          Dst:             p_malloc
    - functionName:    iostream_fd_unref
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ref
      BBCount:         16
      ICount:          80
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'iostream.c:27,2'
          Branch Sides:
            - BranchSide:      'iostream.c:27,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream.c:28,2'
              BranchSideFuncs:
                - p_free_internal.6075
                - i_panic
        - Branch String:   'iostream.c:28,2'
          Branch Sides:
            - BranchSide:      'iostream.c:28,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream.c:30,8'
              BranchSideFuncs:
                - p_free_internal.6075
        - Branch String:   'iostream.c:30,6'
          Branch Sides:
            - BranchSide:      'iostream.c:31,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream.c:32,2'
              BranchSideFuncs:
                - p_free_internal.6075
      Callsites:
        - Src:             'iostream.c:27,2'
          Dst:             i_panic
        - Src:             'iostream.c:28,2'
          Dst:             i_panic
        - Src:             'iostream.c:32,2'
          Dst:             p_free_internal
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    iostream_fd_ref
      functionSourceFile: '/src/dovecot/src/lib/iostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ref
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream.c:19,2'
          Branch Sides:
            - BranchSide:      'iostream.c:19,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream.c:19,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream.c:19,2'
          Dst:             i_panic
    - functionName:    iostream_pump_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - iostream_pump_switch_ioloop_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream-pump.c:250,2'
          Dst:             iostream_pump_switch_ioloop_to
    - functionName:    iostream_pump_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
        - ioloop
      BBCount:         10
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_switch_ioloop_to
        - io_loop_move_io_to
        - o_stream_switch_ioloop_to
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:241,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:241,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:242,6'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
                - i_stream_switch_ioloop_to
                - io_loop_move_io_to
        - Branch String:   'iostream-pump.c:242,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:242,6'
              BranchSideFuncs:
                - io_loop_move_io_to
                - o_stream_switch_ioloop_to
                - i_stream_switch_ioloop_to
            - BranchSide:      'iostream-pump.c:243,33'
              BranchSideFuncs:
                - io_loop_move_io_to
                - o_stream_switch_ioloop_to
                - i_stream_switch_ioloop_to
      Callsites:
        - Src:             'iostream-pump.c:241,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:243,14'
          Dst:             io_loop_move_io_to
        - Src:             'iostream-pump.c:244,2'
          Dst:             o_stream_switch_ioloop_to
        - Src:             'iostream-pump.c:245,2'
          Dst:             i_stream_switch_ioloop_to
    - functionName:    iostream_pump_is_waiting_output
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iostream_pump_destroy
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _pump
      BBCount:         10
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_unref
        - iostream_pump_stop
        - iostream_pump_unref
        - o_stream_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-pump.c:208,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:208,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:209,32'
              BranchSideFuncs:
                - iostream_pump_stop
                - o_stream_unref
                - i_stream_unref
                - iostream_pump_unref
        - Branch String:   'iostream-pump.c:211,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:212,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:214,3'
              BranchSideFuncs:
                - iostream_pump_stop
                - o_stream_unref
                - i_stream_unref
                - iostream_pump_unref
      Callsites:
        - Src:             'iostream-pump.c:208,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:216,2'
          Dst:             iostream_pump_stop
        - Src:             'iostream-pump.c:217,2'
          Dst:             o_stream_unref
        - Src:             'iostream-pump.c:218,2'
          Dst:             i_stream_unref
        - Src:             'iostream-pump.c:220,2'
          Dst:             iostream_pump_unref
    - functionName:    iostream_pump_stop
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         10
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - io_remove
        - o_stream_unset_flush_callback
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-pump.c:225,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:225,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:227,6'
              BranchSideFuncs:
                - io_remove
                - o_stream_unset_flush_callback
        - Branch String:   'iostream-pump.c:227,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:227,6'
              BranchSideFuncs:
                - o_stream_unset_flush_callback
                - io_remove
            - BranchSide:      'iostream-pump.c:228,33'
              BranchSideFuncs:
                - o_stream_unset_flush_callback
                - io_remove
      Callsites:
        - Src:             'iostream-pump.c:225,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:228,3'
          Dst:             o_stream_unset_flush_callback
        - Src:             'iostream-pump.c:230,2'
          Dst:             io_remove
    - functionName:    iostream_pump_unref
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _pump
      BBCount:         17
      ICount:          92
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - i_stream_unref
        - iostream_pump_stop
        - o_stream_unref
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:186,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:186,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:187,32'
              BranchSideFuncs:
                - iostream_pump_stop
                - o_stream_unref
                - i_stream_unref
                - p_free_internal.6138
                - i_panic
        - Branch String:   'iostream-pump.c:189,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:190,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:192,2'
              BranchSideFuncs:
                - iostream_pump_stop
                - o_stream_unref
                - i_stream_unref
                - p_free_internal.6138
                - i_panic
        - Branch String:   'iostream-pump.c:192,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:192,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:194,3'
              BranchSideFuncs:
                - iostream_pump_stop
                - o_stream_unref
                - i_stream_unref
                - p_free_internal.6138
        - Branch String:   'iostream-pump.c:196,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:197,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:199,21'
              BranchSideFuncs:
                - iostream_pump_stop
                - o_stream_unref
                - i_stream_unref
                - p_free_internal.6138
      Callsites:
        - Src:             'iostream-pump.c:186,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:192,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:199,2'
          Dst:             iostream_pump_stop
        - Src:             'iostream-pump.c:201,2'
          Dst:             o_stream_unref
        - Src:             'iostream-pump.c:202,2'
          Dst:             i_stream_unref
        - Src:             'iostream-pump.c:203,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    iostream_pump_ref
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         11
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'iostream-pump.c:179,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:179,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:180,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'iostream-pump.c:180,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:180,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:180,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-pump.c:179,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:180,2'
          Dst:             i_panic
    - functionName:    iostream_pump_set_completion_callback
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
        - callback
        - context
      BBCount:         7
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:172,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:172,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:172,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-pump.c:172,2'
          Dst:             i_panic
    - functionName:    iostream_pump_get_output
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:164,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:164,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:164,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-pump.c:164,2'
          Dst:             i_panic
    - functionName:    iostream_pump_get_input
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:158,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:158,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:158,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-pump.c:158,2'
          Dst:             i_panic
    - functionName:    iostream_pump_copy
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         25
      ICount:          222
      EdgeCount:       48
      CyclomaticComplexity: 25
      functionsReached:
        - i_panic
        - i_unreached
        - io_remove
        - o_stream_cork
        - o_stream_finish
        - o_stream_get_max_buffer_size
        - o_stream_send_istream
        - o_stream_set_max_buffer_size
        - o_stream_uncork
      functionUses:    3
      BranchProfiles:
        - Branch String:   'iostream-pump.c:36,3'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:35,2'
              BranchSideFuncs:
                - o_stream_set_max_buffer_size
                - o_stream_send_istream
                - o_stream_set_max_buffer_size
                - o_stream_uncork
                - i_panic
                - io_remove
                - o_stream_finish
                - io_remove
                - i_panic
                - io_remove
                - io_remove
                - i_unreached
            - BranchSide:      'iostream-pump.c:35,2'
              BranchSideFuncs:
                - o_stream_get_max_buffer_size
                - o_stream_set_max_buffer_size
                - o_stream_send_istream
                - o_stream_set_max_buffer_size
                - o_stream_uncork
                - i_panic
                - io_remove
                - o_stream_finish
                - io_remove
                - i_panic
                - io_remove
                - io_remove
                - i_unreached
        - Branch String:   'iostream-pump.c:42,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:44,14'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'iostream-pump.c:49,14'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'iostream-pump.c:54,3'
              BranchSideFuncs:
                - io_remove
                - i_panic
            - BranchSide:      'iostream-pump.c:59,3'
              BranchSideFuncs:
                - io_remove
                - o_stream_finish
            - BranchSide:      'iostream-pump.c:78,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:82,2'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'iostream-pump.c:54,3'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:54,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:55,3'
              BranchSideFuncs:
                - io_remove
        - Branch String:   'iostream-pump.c:62,3'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:64,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:68,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:72,4'
              BranchSideFuncs: []
        - Branch String:   'iostream-pump.c:78,3'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:78,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:79,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-pump.c:33,2'
          Dst:             o_stream_cork
        - Src:             'iostream-pump.c:34,13'
          Dst:             o_stream_get_max_buffer_size
        - Src:             'iostream-pump.c:36,3'
          Dst:             o_stream_get_max_buffer_size
        - Src:             'iostream-pump.c:36,3'
          Dst:             o_stream_get_max_buffer_size
        - Src:             'iostream-pump.c:35,2'
          Dst:             o_stream_set_max_buffer_size
        - Src:             'iostream-pump.c:38,8'
          Dst:             o_stream_send_istream
        - Src:             'iostream-pump.c:39,2'
          Dst:             o_stream_set_max_buffer_size
        - Src:             'iostream-pump.c:40,2'
          Dst:             o_stream_uncork
        - Src:             'iostream-pump.c:44,3'
          Dst:             io_remove
        - Src:             'iostream-pump.c:49,3'
          Dst:             io_remove
        - Src:             'iostream-pump.c:54,3'
          Dst:             i_panic
        - Src:             'iostream-pump.c:56,3'
          Dst:             io_remove
        - Src:             'iostream-pump.c:60,3'
          Dst:             io_remove
        - Src:             'iostream-pump.c:62,11'
          Dst:             o_stream_finish
        - Src:             'iostream-pump.c:78,3'
          Dst:             i_panic
        - Src:             'iostream-pump.c:82,2'
          Dst:             i_unreached
    - functionName:    iostream_pump_flush
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         17
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - io_add_istream
        - io_set_pending
        - iostream_pump_copy
        - o_stream_flush
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:89,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:90,7'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:96,2'
              BranchSideFuncs:
                - io_add_istream
                - io_set_pending
                - iostream_pump_copy
        - Branch String:   'iostream-pump.c:90,7'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:91,4'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:94,10'
              BranchSideFuncs: []
        - Branch String:   'iostream-pump.c:97,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:98,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-pump.c:102,6'
              BranchSideFuncs:
                - io_add_istream
                - io_set_pending
                - iostream_pump_copy
        - Branch String:   'iostream-pump.c:102,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:103,22'
              BranchSideFuncs:
                - iostream_pump_copy
            - BranchSide:      'iostream-pump.c:104,11'
              BranchSideFuncs:
                - io_add_istream
                - io_set_pending
      Callsites:
        - Src:             'iostream-pump.c:89,13'
          Dst:             o_stream_flush
        - Src:             'iostream-pump.c:103,3'
          Dst:             iostream_pump_copy
        - Src:             'iostream-pump.c:105,14'
          Dst:             io_add_istream
        - Src:             'iostream-pump.c:105,14'
          Dst:             iostream_pump_copy
        - Src:             'iostream-pump.c:107,3'
          Dst:             io_set_pending
    - functionName:    iostream_pump_start
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pump
      BBCount:         21
      ICount:          127
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - io_add_istream
        - io_set_pending
        - iostream_pump_copy
        - iostream_pump_flush
        - o_stream_set_flush_callback
        - o_stream_set_flush_pending
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:136,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:136,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:137,2'
              BranchSideFuncs:
                - o_stream_set_flush_callback
                - io_add_istream
                - io_set_pending
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
        - Branch String:   'iostream-pump.c:137,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:137,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:140,7'
              BranchSideFuncs:
                - o_stream_set_flush_callback
                - io_add_istream
                - io_set_pending
                - o_stream_set_flush_pending
                - i_panic
        - Branch String:   'iostream-pump.c:140,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:141,3'
              BranchSideFuncs:
                - io_add_istream
                - io_set_pending
                - o_stream_set_flush_pending
                - i_panic
            - BranchSide:      'iostream-pump.c:146,6'
              BranchSideFuncs:
                - io_add_istream
                - io_set_pending
                - o_stream_set_flush_pending
                - i_panic
        - Branch String:   'iostream-pump.c:146,6'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:147,3'
              BranchSideFuncs:
                - o_stream_set_flush_pending
                - i_panic
            - BranchSide:      'iostream-pump.c:150,14'
              BranchSideFuncs:
                - io_add_istream
                - io_set_pending
        - Branch String:   'iostream-pump.c:147,3'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:147,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:148,30'
              BranchSideFuncs:
                - o_stream_set_flush_pending
      Callsites:
        - Src:             'iostream-pump.c:136,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:137,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:141,3'
          Dst:             o_stream_set_flush_callback
        - Src:             'iostream-pump.c:141,3'
          Dst:             iostream_pump_flush
        - Src:             'iostream-pump.c:147,3'
          Dst:             i_panic
        - Src:             'iostream-pump.c:148,3'
          Dst:             o_stream_set_flush_pending
        - Src:             'iostream-pump.c:150,14'
          Dst:             io_add_istream
        - Src:             'iostream-pump.c:150,14'
          Dst:             iostream_pump_copy
        - Src:             'iostream-pump.c:152,3'
          Dst:             io_set_pending
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    iostream_pump_create
      functionSourceFile: '/src/dovecot/src/lib/iostream-pump.c'
      linkageType:     externalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - output
      BBCount:         17
      ICount:          108
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - i_stream_ref
        - malloc_multiply_check
        - o_stream_ref
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-pump.c:117,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:117,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6152
                - p_malloc.6154
                - i_panic
                - i_panic
            - BranchSide:      'iostream-pump.c:117,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6152
                - p_malloc.6154
                - i_panic
                - i_panic
        - Branch String:   'iostream-pump.c:117,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:117,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:119,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6152
                - p_malloc.6154
                - i_panic
        - Branch String:   'iostream-pump.c:119,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:119,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6152
                - p_malloc.6154
                - i_panic
            - BranchSide:      'iostream-pump.c:119,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6152
                - p_malloc.6154
                - i_panic
        - Branch String:   'iostream-pump.c:119,2'
          Branch Sides:
            - BranchSide:      'iostream-pump.c:119,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'iostream-pump.c:119,2'
              BranchSideFuncs:
                - i_stream_ref
                - o_stream_ref
                - malloc_multiply_check.6152
                - p_malloc.6154
      Callsites:
        - Src:             'iostream-pump.c:117,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:119,2'
          Dst:             i_panic
        - Src:             'iostream-pump.c:122,2'
          Dst:             i_stream_ref
        - Src:             'iostream-pump.c:123,2'
          Dst:             o_stream_ref
        - Src:             'iostream-pump.c:126,9'
          Dst:             malloc_multiply_check
        - Src:             'iostream-pump.c:126,9'
          Dst:             p_malloc
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib/./strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    rawlog_write_timestamp
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - rstream
        - line_ends
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_create_from_data
        - o_stream_nsend
        - str_append_c
        - str_printfa
      functionUses:    3
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:30,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:31,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:33,2'
              BranchSideFuncs:
                - buffer_create_from_data
                - str_printfa
                - o_stream_nsend
                - str_append_c.6199
                - str_append_c.6199
                - str_append_c.6199
        - Branch String:   'iostream-rawlog.c:37,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:38,3'
              BranchSideFuncs:
                - str_append_c.6199
                - str_append_c.6199
                - str_append_c.6199
                - o_stream_nsend
            - BranchSide:      'iostream-rawlog.c:42,17'
              BranchSideFuncs:
                - o_stream_nsend
      Callsites:
        - Src:             'iostream-rawlog.c:33,2'
          Dst:             buffer_create_from_data
        - Src:             'iostream-rawlog.c:34,2'
          Dst:             str_printfa
        - Src:             'iostream-rawlog.c:38,3'
          Dst:             str_append_c
        - Src:             'iostream-rawlog.c:39,3'
          Dst:             str_append_c
        - Src:             'iostream-rawlog.c:40,3'
          Dst:             str_append_c
        - Src:             'iostream-rawlog.c:42,2'
          Dst:             o_stream_nsend
    - functionName:    iostream_rawlog_create_from_stream
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - rawlog_output
        - input
        - output
      BBCount:         14
      ICount:          87
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - i_stream_create_rawlog_from_stream
        - i_stream_unref
        - o_stream_create_rawlog_from_stream
        - o_stream_ref
        - o_stream_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:305,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:306,16'
              BranchSideFuncs:
                - i_stream_create_rawlog_from_stream
                - i_stream_unref
                - o_stream_ref
                - o_stream_create_rawlog_from_stream
                - o_stream_unref
            - BranchSide:      'iostream-rawlog.c:311,6'
              BranchSideFuncs:
                - o_stream_ref
                - o_stream_create_rawlog_from_stream
                - o_stream_unref
        - Branch String:   'iostream-rawlog.c:311,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:312,17'
              BranchSideFuncs:
                - o_stream_create_rawlog_from_stream
                - o_stream_unref
                - o_stream_ref
            - BranchSide:      'iostream-rawlog.c:317,6'
              BranchSideFuncs:
                - o_stream_ref
        - Branch String:   'iostream-rawlog.c:317,20'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:317,23'
              BranchSideFuncs:
                - o_stream_ref
            - BranchSide:      'iostream-rawlog.c:317,20'
              BranchSideFuncs: []
        - Branch String:   'iostream-rawlog.c:317,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:317,6'
              BranchSideFuncs:
                - o_stream_ref
            - BranchSide:      'iostream-rawlog.c:318,16'
              BranchSideFuncs:
                - o_stream_ref
      Callsites:
        - Src:             'iostream-rawlog.c:307,12'
          Dst:             i_stream_create_rawlog_from_stream
        - Src:             'iostream-rawlog.c:309,3'
          Dst:             i_stream_unref
        - Src:             'iostream-rawlog.c:313,13'
          Dst:             o_stream_create_rawlog_from_stream
        - Src:             'iostream-rawlog.c:315,3'
          Dst:             o_stream_unref
        - Src:             'iostream-rawlog.c:318,3'
          Dst:             o_stream_ref
    - functionName:    iostream_rawlog_create_fd
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - path
        - input
        - output
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_rawlog
        - i_stream_unref
        - o_stream_create_rawlog
        - o_stream_unref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream-rawlog.c:173,11'
          Dst:             i_stream_create_rawlog
        - Src:             'iostream-rawlog.c:176,12'
          Dst:             o_stream_create_rawlog
        - Src:             'iostream-rawlog.c:180,2'
          Dst:             i_stream_unref
        - Src:             'iostream-rawlog.c:181,2'
          Dst:             o_stream_unref
    - functionName:    iostream_rawlog_create_path
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - input
        - output
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_error
        - iostream_rawlog_create_fd
        - iostream_rawlog_try_create_tcp
        - open
      functionUses:    0
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:284,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:285,10'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:286,12'
              BranchSideFuncs:
                - open
                - iostream_rawlog_create_fd
                - i_error
        - Branch String:   'iostream-rawlog.c:287,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:288,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'iostream-rawlog.c:291,28'
              BranchSideFuncs:
                - iostream_rawlog_create_fd
      Callsites:
        - Src:             'iostream-rawlog.c:284,13'
          Dst:             iostream_rawlog_try_create_tcp
        - Src:             'iostream-rawlog.c:286,7'
          Dst:             open
        - Src:             'iostream-rawlog.c:288,3'
          Dst:             i_error
        - Src:             'iostream-rawlog.c:291,2'
          Dst:             iostream_rawlog_create_fd
    - functionName:    iostream_rawlog_try_create_tcp
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - input
        - output
      BBCount:         27
      ICount:          148
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - i_error
        - iostream_rawlog_create_fd
        - net_connect_ip_blocking
        - net_gethostbyname
        - net_gethosterror
        - net_ip2addr
        - net_str2hostport
        - str_begins
        - str_begins_builtin_success
        - strchr
        - strncmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:195,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:195,7'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.6198
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
            - BranchSide:      'iostream-rawlog.c:195,7'
              BranchSideFuncs:
                - str_begins
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
        - Branch String:   'iostream-rawlog.c:195,7'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:196,3'
              BranchSideFuncs:
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
            - BranchSide:      'iostream-rawlog.c:198,13'
              BranchSideFuncs:
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
        - Branch String:   'iostream-rawlog.c:195,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:195,7'
              BranchSideFuncs:
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
            - BranchSide:      'iostream-rawlog.c:195,7'
              BranchSideFuncs:
                - str_begins_builtin_success.6198
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
        - Branch String:   'iostream-rawlog.c:195,7'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:196,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:198,13'
              BranchSideFuncs:
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
        - Branch String:   'iostream-rawlog.c:195,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:196,3'
              BranchSideFuncs:
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
            - BranchSide:      'iostream-rawlog.c:198,13'
              BranchSideFuncs:
                - strchr
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
        - Branch String:   'iostream-rawlog.c:198,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:199,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:200,23'
              BranchSideFuncs:
                - net_str2hostport
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
        - Branch String:   'iostream-rawlog.c:200,50'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:200,53'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:201,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-rawlog.c:200,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:201,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:203,26'
              BranchSideFuncs:
                - net_gethostbyname
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
                - net_gethosterror
                - i_error
        - Branch String:   'iostream-rawlog.c:204,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:205,47'
              BranchSideFuncs:
                - net_gethosterror
                - i_error
            - BranchSide:      'iostream-rawlog.c:209,32'
              BranchSideFuncs:
                - net_connect_ip_blocking
                - iostream_rawlog_create_fd
                - net_ip2addr
                - i_error
        - Branch String:   'iostream-rawlog.c:210,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:211,53'
              BranchSideFuncs:
                - net_ip2addr
                - i_error
            - BranchSide:      'iostream-rawlog.c:214,28'
              BranchSideFuncs:
                - iostream_rawlog_create_fd
      Callsites:
        - Src:             'iostream-rawlog.c:195,7'
          Dst:             str_begins
        - Src:             'iostream-rawlog.c:195,7'
          Dst:             strncmp
        - Src:             'iostream-rawlog.c:195,7'
          Dst:             str_begins_builtin_success
        - Src:             'iostream-rawlog.c:198,6'
          Dst:             strchr
        - Src:             'iostream-rawlog.c:200,6'
          Dst:             net_str2hostport
        - Src:             'iostream-rawlog.c:203,8'
          Dst:             net_gethostbyname
        - Src:             'iostream-rawlog.c:206,4'
          Dst:             net_gethosterror
        - Src:             'iostream-rawlog.c:205,3'
          Dst:             i_error
        - Src:             'iostream-rawlog.c:209,7'
          Dst:             net_connect_ip_blocking
        - Src:             'iostream-rawlog.c:211,40'
          Dst:             net_ip2addr
        - Src:             'iostream-rawlog.c:211,3'
          Dst:             i_error
        - Src:             'iostream-rawlog.c:214,2'
          Dst:             iostream_rawlog_create_fd
    - functionName:    iostream_rawlog_create_prefix
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
        - input
        - output
      BBCount:         8
      ICount:          96
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_close_fd_path
        - i_error
        - i_stream_create_rawlog
        - i_stream_unref
        - i_unlink
        - o_stream_create_rawlog
        - o_stream_unref
        - open
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:251,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:252,35'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'iostream-rawlog.c:256,39'
              BranchSideFuncs:
                - t_strdup_printf
                - open
                - i_stream_create_rawlog
                - o_stream_create_rawlog
                - i_stream_unref
                - o_stream_unref
                - i_error
                - i_close_fd_path
                - i_unlink
        - Branch String:   'iostream-rawlog.c:258,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:259,35'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
                - i_unlink
            - BranchSide:      'iostream-rawlog.c:265,15'
              BranchSideFuncs:
                - i_stream_create_rawlog
                - o_stream_create_rawlog
                - i_stream_unref
                - o_stream_unref
      Callsites:
        - Src:             'iostream-rawlog.c:249,12'
          Dst:             t_strdup_printf
        - Src:             'iostream-rawlog.c:250,10'
          Dst:             open
        - Src:             'iostream-rawlog.c:252,3'
          Dst:             i_error
        - Src:             'iostream-rawlog.c:256,13'
          Dst:             t_strdup_printf
        - Src:             'iostream-rawlog.c:257,11'
          Dst:             open
        - Src:             'iostream-rawlog.c:259,3'
          Dst:             i_error
        - Src:             'iostream-rawlog.c:260,3'
          Dst:             i_close_fd_path
        - Src:             'iostream-rawlog.c:261,3'
          Dst:             i_unlink
        - Src:             'iostream-rawlog.c:268,11'
          Dst:             i_stream_create_rawlog
        - Src:             'iostream-rawlog.c:271,12'
          Dst:             o_stream_create_rawlog
        - Src:             'iostream-rawlog.c:274,2'
          Dst:             i_stream_unref
        - Src:             'iostream-rawlog.c:275,2'
          Dst:             o_stream_unref
    - functionName:    iostream_rawlog_create
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dir
        - input
        - output
      BBCount:         13
      ICount:          100
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - i_error
        - iostream_rawlog_create_prefix
        - iostream_rawlog_try_create_tcp
        - stat
        - t_strdup_printf
        - t_strflocaltime
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:226,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:227,10'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:228,11'
              BranchSideFuncs:
                - stat
                - t_strflocaltime
                - t_strdup_printf
                - iostream_rawlog_create_prefix
                - __errno_location
                - __errno_location
                - i_error
        - Branch String:   'iostream-rawlog.c:228,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:229,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_error
            - BranchSide:      'iostream-rawlog.c:234,47'
              BranchSideFuncs:
                - t_strflocaltime
                - t_strdup_printf
                - iostream_rawlog_create_prefix
        - Branch String:   'iostream-rawlog.c:229,23'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:229,26'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'iostream-rawlog.c:231,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-rawlog.c:229,7'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:230,43'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'iostream-rawlog.c:231,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'iostream-rawlog.c:226,13'
          Dst:             iostream_rawlog_try_create_tcp
        - Src:             'iostream-rawlog.c:228,6'
          Dst:             stat
        - Src:             'iostream-rawlog.c:229,7'
          Dst:             __errno_location
        - Src:             'iostream-rawlog.c:229,26'
          Dst:             __errno_location
        - Src:             'iostream-rawlog.c:230,4'
          Dst:             i_error
        - Src:             'iostream-rawlog.c:234,14'
          Dst:             t_strflocaltime
        - Src:             'iostream-rawlog.c:237,11'
          Dst:             t_strdup_printf
        - Src:             'iostream-rawlog.c:238,9'
          Dst:             iostream_rawlog_create_prefix
    - functionName:    iostream_rawlog_close
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rstream
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
        - o_stream_unref
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'iostream-rawlog.c:160,2'
          Dst:             o_stream_unref
        - Src:             'iostream-rawlog.c:161,2'
          Dst:             buffer_free
    - functionName:    iostream_rawlog_write_flush
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - rstream
        - data
        - size
        - line_ends
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_set_used_size
        - o_stream_nsend
        - rawlog_write_timestamp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:60,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:61,18'
              BranchSideFuncs:
                - o_stream_nsend
                - buffer_set_used_size
                - o_stream_nsend
                - o_stream_nsend
            - BranchSide:      'iostream-rawlog.c:66,17'
              BranchSideFuncs:
                - o_stream_nsend
                - o_stream_nsend
        - Branch String:   'iostream-rawlog.c:67,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:67,6'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:68,18'
              BranchSideFuncs:
                - o_stream_nsend
      Callsites:
        - Src:             'iostream-rawlog.c:59,2'
          Dst:             rawlog_write_timestamp
        - Src:             'iostream-rawlog.c:61,3'
          Dst:             o_stream_nsend
        - Src:             'iostream-rawlog.c:64,3'
          Dst:             buffer_set_used_size
        - Src:             'iostream-rawlog.c:66,2'
          Dst:             o_stream_nsend
        - Src:             'iostream-rawlog.c:68,3'
          Dst:             o_stream_nsend
    - functionName:    iostream_rawlog_flush
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rstream
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - iostream_rawlog_flush_output
        - iostream_rawlog_write_flush
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:152,30'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:152,33'
              BranchSideFuncs:
                - iostream_rawlog_write_flush
                - iostream_rawlog_flush_output
            - BranchSide:      'iostream-rawlog.c:152,30'
              BranchSideFuncs: []
        - Branch String:   'iostream-rawlog.c:152,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:152,6'
              BranchSideFuncs:
                - iostream_rawlog_write_flush
                - iostream_rawlog_flush_output
            - BranchSide:      'iostream-rawlog.c:153,31'
              BranchSideFuncs:
                - iostream_rawlog_write_flush
                - iostream_rawlog_flush_output
      Callsites:
        - Src:             'iostream-rawlog.c:153,3'
          Dst:             iostream_rawlog_write_flush
        - Src:             'iostream-rawlog.c:154,3'
          Dst:             iostream_rawlog_flush_output
    - functionName:    iostream_rawlog_flush_output
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - rstream
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_error
        - iostream_rawlog_close
        - o_stream_flush
        - o_stream_get_error
        - o_stream_get_name
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:125,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:125,6'
              BranchSideFuncs:
                - o_stream_get_name
                - o_stream_get_error
                - i_error
                - iostream_rawlog_close
            - BranchSide:      'iostream-rawlog.c:127,22'
              BranchSideFuncs:
                - o_stream_get_name
                - o_stream_get_error
                - i_error
                - iostream_rawlog_close
      Callsites:
        - Src:             'iostream-rawlog.c:125,6'
          Dst:             o_stream_flush
        - Src:             'iostream-rawlog.c:127,4'
          Dst:             o_stream_get_name
        - Src:             'iostream-rawlog.c:128,4'
          Dst:             o_stream_get_error
        - Src:             'iostream-rawlog.c:126,3'
          Dst:             i_error
        - Src:             'iostream-rawlog.c:129,3'
          Dst:             iostream_rawlog_close
    - functionName:    iostream_rawlog_write_unbuffered
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - rstream
        - data
        - size
      BBCount:         16
      ICount:          121
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - o_stream_nsend
        - rawlog_write_timestamp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:105,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:106,26'
              BranchSideFuncs:
                - o_stream_nsend
                - o_stream_nsend
                - rawlog_write_timestamp
            - BranchSide:      'iostream-rawlog.c:108,13'
              BranchSideFuncs:
                - o_stream_nsend
                - o_stream_nsend
                - rawlog_write_timestamp
        - Branch String:   'iostream-rawlog.c:108,2'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:109,7'
              BranchSideFuncs:
                - o_stream_nsend
                - o_stream_nsend
                - rawlog_write_timestamp
            - BranchSide:      'iostream-rawlog.c:116,6'
              BranchSideFuncs:
                - o_stream_nsend
        - Branch String:   'iostream-rawlog.c:109,7'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:110,19'
              BranchSideFuncs:
                - o_stream_nsend
                - rawlog_write_timestamp
                - o_stream_nsend
            - BranchSide:      'iostream-rawlog.c:115,2'
              BranchSideFuncs:
                - o_stream_nsend
                - o_stream_nsend
                - rawlog_write_timestamp
        - Branch String:   'iostream-rawlog.c:116,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:116,6'
              BranchSideFuncs:
                - o_stream_nsend
            - BranchSide:      'iostream-rawlog.c:117,18'
              BranchSideFuncs:
                - o_stream_nsend
      Callsites:
        - Src:             'iostream-rawlog.c:106,3'
          Dst:             rawlog_write_timestamp
        - Src:             'iostream-rawlog.c:110,4'
          Dst:             o_stream_nsend
        - Src:             'iostream-rawlog.c:112,4'
          Dst:             rawlog_write_timestamp
        - Src:             'iostream-rawlog.c:117,3'
          Dst:             o_stream_nsend
    - functionName:    iostream_rawlog_write_buffered
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - rstream
        - data
        - size
      BBCount:         13
      ICount:          98
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_append
        - iostream_rawlog_write_flush
        - memchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:79,2'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:79,2'
              BranchSideFuncs:
                - memchr
                - iostream_rawlog_write_flush
                - buffer_append
            - BranchSide:      'iostream-rawlog.c:80,14'
              BranchSideFuncs:
                - memchr
                - iostream_rawlog_write_flush
                - buffer_append
        - Branch String:   'iostream-rawlog.c:81,7'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:82,14'
              BranchSideFuncs:
                - iostream_rawlog_write_flush
                - memchr
                - buffer_append
            - BranchSide:      'iostream-rawlog.c:84,14'
              BranchSideFuncs:
                - iostream_rawlog_write_flush
                - memchr
                - buffer_append
        - Branch String:   'iostream-rawlog.c:84,14'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:85,18'
              BranchSideFuncs:
                - buffer_append
            - BranchSide:      'iostream-rawlog.c:88,14'
              BranchSideFuncs:
                - iostream_rawlog_write_flush
                - memchr
                - buffer_append
      Callsites:
        - Src:             'iostream-rawlog.c:80,7'
          Dst:             memchr
        - Src:             'iostream-rawlog.c:85,4'
          Dst:             buffer_append
        - Src:             'iostream-rawlog.c:92,3'
          Dst:             iostream_rawlog_write_flush
    - functionName:    iostream_rawlog_write
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - rstream
        - data
        - size
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - io_loop_time_refresh
        - iostream_rawlog_flush_output
        - iostream_rawlog_write_buffered
        - iostream_rawlog_write_unbuffered
        - o_stream_cork
        - o_stream_uncork
      functionUses:    3
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:136,16'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:136,19'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:137,3'
              BranchSideFuncs: []
        - Branch String:   'iostream-rawlog.c:136,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:137,3'
              BranchSideFuncs: []
            - BranchSide:      'iostream-rawlog.c:139,2'
              BranchSideFuncs:
                - io_loop_time_refresh
                - o_stream_cork
                - iostream_rawlog_write_unbuffered
                - o_stream_uncork
                - iostream_rawlog_flush_output
                - iostream_rawlog_write_buffered
        - Branch String:   'iostream-rawlog.c:142,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:143,34'
              BranchSideFuncs:
                - iostream_rawlog_write_buffered
                - o_stream_uncork
                - iostream_rawlog_flush_output
            - BranchSide:      'iostream-rawlog.c:145,36'
              BranchSideFuncs:
                - iostream_rawlog_write_unbuffered
                - o_stream_uncork
                - iostream_rawlog_flush_output
      Callsites:
        - Src:             'iostream-rawlog.c:139,2'
          Dst:             io_loop_time_refresh
        - Src:             'iostream-rawlog.c:141,2'
          Dst:             o_stream_cork
        - Src:             'iostream-rawlog.c:143,3'
          Dst:             iostream_rawlog_write_buffered
        - Src:             'iostream-rawlog.c:145,3'
          Dst:             iostream_rawlog_write_unbuffered
        - Src:             'iostream-rawlog.c:146,2'
          Dst:             o_stream_uncork
        - Src:             'iostream-rawlog.c:147,2'
          Dst:             iostream_rawlog_flush_output
    - functionName:    iostream_rawlog_init
      functionSourceFile: '/src/dovecot/src/lib/iostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - rstream
        - flags
        - input
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_create_dynamic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'iostream-rawlog.c:50,6'
          Branch Sides:
            - BranchSide:      'iostream-rawlog.c:50,6'
              BranchSideFuncs:
                - buffer_create_dynamic
            - BranchSide:      'iostream-rawlog.c:51,43'
              BranchSideFuncs:
                - buffer_create_dynamic
      Callsites:
        - Src:             'iostream-rawlog.c:51,21'
          Dst:             buffer_create_dynamic
    - functionName:    seekable_i_stream_get_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1202
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         17
      ICount:          106
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - i_stream_get_data_size
        - i_stream_read
        - i_stream_seek
        - i_stream_skip
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1185,6'
          Branch Sides:
            - BranchSide:      'istream.c:1186,23'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_read
                - i_stream_seek
                - i_panic
            - BranchSide:      'istream.c:1200,28'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1192,3'
          Branch Sides:
            - BranchSide:      'istream.c:1190,19'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_read
                - i_stream_seek
                - i_panic
            - BranchSide:      'istream.c:1193,3'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'istream.c:1193,3'
          Branch Sides:
            - BranchSide:      'istream.c:1193,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1194,7'
              BranchSideFuncs:
                - i_stream_seek
        - Branch String:   'istream.c:1194,7'
          Branch Sides:
            - BranchSide:      'istream.c:1195,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1197,32'
              BranchSideFuncs:
                - i_stream_seek
      Callsites:
        - Src:             'istream.c:1191,5'
          Dst:             i_stream_get_data_size
        - Src:             'istream.c:1190,4'
          Dst:             i_stream_skip
        - Src:             'istream.c:1192,19'
          Dst:             i_stream_read
        - Src:             'istream.c:1193,3'
          Dst:             i_panic
        - Src:             'istream.c:1198,3'
          Dst:             i_stream_seek
    - functionName:    i_stream_get_data_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_get_data
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:774,8'
          Dst:             i_stream_get_data
    - functionName:    i_stream_skip
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - count
      BBCount:         16
      ICount:          150
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - i_stream_free_buffer
      functionUses:    13
      BranchProfiles:
        - Branch String:   'istream.c:486,6'
          Branch Sides:
            - BranchSide:      'istream.c:488,23'
              BranchSideFuncs:
                - i_stream_free_buffer
            - BranchSide:      'istream.c:499,11'
              BranchSideFuncs: []
        - Branch String:   'istream.c:490,38'
          Branch Sides:
            - BranchSide:      'istream.c:491,7'
              BranchSideFuncs:
                - i_stream_free_buffer
            - BranchSide:      'istream.c:495,3'
              BranchSideFuncs: []
        - Branch String:   'istream.c:490,7'
          Branch Sides:
            - BranchSide:      'istream.c:492,20'
              BranchSideFuncs:
                - i_stream_free_buffer
            - BranchSide:      'istream.c:495,3'
              BranchSideFuncs: []
        - Branch String:   'istream.c:503,6'
          Branch Sides:
            - BranchSide:      'istream.c:503,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:503,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:503,6'
          Branch Sides:
            - BranchSide:      'istream.c:504,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:506,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:493,4'
          Dst:             i_stream_free_buffer
    - functionName:    i_stream_read
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         17
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - i_stream_is_io_pending_until_read
        - i_stream_read_memarea
        - i_stream_set_input_pending
        - i_stream_snapshot_free
      functionUses:    8
      BranchProfiles:
        - Branch String:   'istream.c:313,36'
          Branch Sides:
            - BranchSide:      'istream.c:313,39'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_is_io_pending_until_read
                - i_stream_set_input_pending
                - i_stream_snapshot_free
            - BranchSide:      'istream.c:315,4'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_is_io_pending_until_read
                - i_stream_set_input_pending
                - i_stream_snapshot_free
        - Branch String:   'istream.c:313,6'
          Branch Sides:
            - BranchSide:      'istream.c:315,4'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_is_io_pending_until_read
                - i_stream_set_input_pending
                - i_stream_snapshot_free
            - BranchSide:      'istream.c:317,30'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_is_io_pending_until_read
                - i_stream_set_input_pending
                - i_stream_snapshot_free
        - Branch String:   'istream.c:318,6'
          Branch Sides:
            - BranchSide:      'istream.c:319,27'
              BranchSideFuncs:
                - i_stream_snapshot_free
                - i_stream_is_io_pending_until_read
                - i_stream_set_input_pending
            - BranchSide:      'istream.c:334,7'
              BranchSideFuncs:
                - i_stream_is_io_pending_until_read
                - i_stream_set_input_pending
        - Branch String:   'istream.c:334,28'
          Branch Sides:
            - BranchSide:      'istream.c:334,28'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:335,40'
              BranchSideFuncs:
                - i_stream_is_io_pending_until_read
                - i_stream_set_input_pending
        - Branch String:   'istream.c:334,6'
          Branch Sides:
            - BranchSide:      'istream.c:334,6'
              BranchSideFuncs:
                - i_stream_set_input_pending
            - BranchSide:      'istream.c:339,30'
              BranchSideFuncs:
                - i_stream_set_input_pending
      Callsites:
        - Src:             'istream.c:317,8'
          Dst:             i_stream_read_memarea
        - Src:             'istream.c:319,3'
          Dst:             i_stream_snapshot_free
        - Src:             'istream.c:335,6'
          Dst:             i_stream_is_io_pending_until_read
        - Src:             'istream.c:339,3'
          Dst:             i_stream_set_input_pending
    - functionName:    i_stream_seek
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - v_offset
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - i_stream_can_optimize_seek
        - i_stream_skip
        - i_stream_update
      functionUses:    15
      BranchProfiles:
        - Branch String:   'istream.c:526,35'
          Branch Sides:
            - BranchSide:      'istream.c:527,33'
              BranchSideFuncs:
                - i_stream_can_optimize_seek
                - i_stream_update
                - i_stream_skip
            - BranchSide:      'istream.c:530,7'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:526,6'
          Branch Sides:
            - BranchSide:      'istream.c:528,17'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_update
            - BranchSide:      'istream.c:530,7'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:530,7'
          Branch Sides:
            - BranchSide:      'istream.c:530,7'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:530,7'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:530,7'
          Branch Sides:
            - BranchSide:      'istream.c:531,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:534,3'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:527,6'
          Dst:             i_stream_can_optimize_seek
        - Src:             'istream.c:528,3'
          Dst:             i_stream_skip
        - Src:             'istream.c:537,2'
          Dst:             i_stream_update
    - functionName:    i_stream_can_optimize_seek
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_can_optimize_seek
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:511,6'
          Branch Sides:
            - BranchSide:      'istream.c:512,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:515,6'
              BranchSideFuncs:
                - i_stream_can_optimize_seek
        - Branch String:   'istream.c:515,6'
          Branch Sides:
            - BranchSide:      'istream.c:517,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:519,36'
              BranchSideFuncs:
                - i_stream_can_optimize_seek
      Callsites:
        - Src:             'istream.c:519,9'
          Dst:             i_stream_can_optimize_seek
    - functionName:    i_stream_update
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'istream.c:204,6'
          Branch Sides:
            - BranchSide:      'istream.c:205,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:208,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_read_memarea
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         62
      ICount:          419
      EdgeCount:       67
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - i_panic
        - i_stream_is_buffer_invalid
        - i_stream_seek
        - i_stream_update
      functionUses:    8
      BranchProfiles:
        - Branch String:   'istream.c:350,6'
          Branch Sides:
            - BranchSide:      'istream.c:350,6'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_stream_seek
                - __errno_location
            - BranchSide:      'istream.c:350,6'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_stream_seek
                - __errno_location
        - Branch String:   'istream.c:350,6'
          Branch Sides:
            - BranchSide:      'istream.c:351,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'istream.c:356,2'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_stream_seek
        - Branch String:   'istream.c:358,6'
          Branch Sides:
            - BranchSide:      'istream.c:359,17'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream.c:361,13'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:362,6'
          Branch Sides:
            - BranchSide:      'istream.c:364,9'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream.c:368,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:372,2'
          Branch Sides:
            - BranchSide:      'istream.c:372,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:373,10'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:373,2'
          Branch Sides:
            - BranchSide:      'istream.c:375,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
            - BranchSide:      'istream.c:378,7'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
            - BranchSide:      'istream.c:389,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
            - BranchSide:      'istream.c:392,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:375,3'
          Branch Sides:
            - BranchSide:      'istream.c:375,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:376,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:378,7'
          Branch Sides:
            - BranchSide:      'istream.c:381,4'
              BranchSideFuncs:
                - __errno_location
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
            - BranchSide:      'istream.c:384,4'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:384,4'
          Branch Sides:
            - BranchSide:      'istream.c:384,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:385,4'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
        - Branch String:   'istream.c:385,4'
          Branch Sides:
            - BranchSide:      'istream.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:385,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:389,3'
          Branch Sides:
            - BranchSide:      'istream.c:389,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:390,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:392,3'
          Branch Sides:
            - BranchSide:      'istream.c:392,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:393,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream.c:393,3'
          Branch Sides:
            - BranchSide:      'istream.c:393,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:394,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
                - i_panic
        - Branch String:   'istream.c:394,3'
          Branch Sides:
            - BranchSide:      'istream.c:394,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:395,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:399,6'
          Branch Sides:
            - BranchSide:      'istream.c:404,3'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
            - BranchSide:      'istream.c:407,18'
              BranchSideFuncs:
                - i_stream_update
                - i_stream_is_buffer_invalid
                - i_panic
        - Branch String:   'istream.c:410,2'
          Branch Sides:
            - BranchSide:      'istream.c:410,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:411,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:352,3'
          Dst:             __errno_location
        - Src:             'istream.c:359,3'
          Dst:             i_stream_seek
        - Src:             'istream.c:372,2'
          Dst:             i_panic
        - Src:             'istream.c:375,3'
          Dst:             i_panic
        - Src:             'istream.c:382,4'
          Dst:             __errno_location
        - Src:             'istream.c:384,4'
          Dst:             i_panic
        - Src:             'istream.c:385,4'
          Dst:             i_panic
        - Src:             'istream.c:389,3'
          Dst:             i_panic
        - Src:             'istream.c:392,3'
          Dst:             i_panic
        - Src:             'istream.c:393,3'
          Dst:             i_panic
        - Src:             'istream.c:394,3'
          Dst:             i_panic
        - Src:             'istream.c:407,2'
          Dst:             i_stream_update
        - Src:             'istream.c:410,2'
          Dst:             i_stream_is_buffer_invalid
        - Src:             'istream.c:410,2'
          Dst:             i_panic
    - functionName:    i_stream_snapshot_free
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _snapshot
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_snapshot_free
        - i_stream_unref
        - memarea_unref
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'istream.c:262,6'
          Branch Sides:
            - BranchSide:      'istream.c:263,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:264,3'
              BranchSideFuncs:
                - i_stream_snapshot_free
                - i_stream_unref
                - p_free_internal.6416
                - memarea_unref
        - Branch String:   'istream.c:267,6'
          Branch Sides:
            - BranchSide:      'istream.c:268,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:270,7'
              BranchSideFuncs:
                - i_stream_unref
                - p_free_internal.6416
                - memarea_unref
        - Branch String:   'istream.c:270,7'
          Branch Sides:
            - BranchSide:      'istream.c:271,19'
              BranchSideFuncs:
                - memarea_unref
                - i_stream_unref
                - p_free_internal.6416
            - BranchSide:      'istream.c:272,19'
              BranchSideFuncs:
                - i_stream_unref
                - p_free_internal.6416
      Callsites:
        - Src:             'istream.c:266,2'
          Dst:             i_stream_snapshot_free
        - Src:             'istream.c:271,4'
          Dst:             memarea_unref
        - Src:             'istream.c:272,3'
          Dst:             i_stream_unref
        - Src:             'istream.c:273,3'
          Dst:             p_free_internal
    - functionName:    i_stream_is_io_pending_until_read
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:286,33'
          Branch Sides:
            - BranchSide:      'istream.c:286,37'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:286,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:286,2'
          Branch Sides:
            - BranchSide:      'istream.c:287,13'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:288,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_set_input_pending
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1026
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - pending
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_get_root_io
        - io_set_pending
      functionUses:    3
      BranchProfiles:
        - Branch String:   'istream.c:1027,6'
          Branch Sides:
            - BranchSide:      'istream.c:1028,3'
              BranchSideFuncs:
                - i_stream_get_root_io
                - io_set_pending
            - BranchSide:      'istream.c:1030,2'
              BranchSideFuncs:
                - i_stream_get_root_io
                - io_set_pending
        - Branch String:   'istream.c:1033,6'
          Branch Sides:
            - BranchSide:      'istream.c:1034,18'
              BranchSideFuncs:
                - io_set_pending
            - BranchSide:      'istream.c:1036,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1032,11'
          Dst:             i_stream_get_root_io
        - Src:             'istream.c:1034,3'
          Dst:             io_set_pending
    - functionName:    i_stream_get_root_io
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1017
      functionLinenumberEnd: 1022
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         10
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'istream.c:1018,2'
          Branch Sides:
            - BranchSide:      'istream.c:1019,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1022,9'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1019,3'
          Branch Sides:
            - BranchSide:      'istream.c:1019,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1020,12'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'istream.c:1019,3'
          Dst:             i_panic
    - functionName:    i_stream_unref
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         12
      ICount:          79
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_snapshot_free
        - i_stream_unref
        - i_unreached
        - io_stream_free
        - io_stream_unref
        - str_free
      functionUses:    32
      BranchProfiles:
        - Branch String:   'istream.c:57,6'
          Branch Sides:
            - BranchSide:      'istream.c:58,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:60,3'
              BranchSideFuncs:
                - i_stream_snapshot_free
                - io_stream_unref
                - str_free
                - i_stream_unref
                - io_stream_free
                - i_unreached
                - io_stream_unref
                - i_unreached
        - Branch String:   'istream.c:63,6'
          Branch Sides:
            - BranchSide:      'istream.c:64,25'
              BranchSideFuncs:
                - io_stream_unref
                - i_unreached
            - BranchSide:      'istream.c:69,27'
              BranchSideFuncs:
                - i_stream_snapshot_free
                - io_stream_unref
                - str_free
                - i_stream_unref
                - io_stream_free
                - i_unreached
        - Branch String:   'istream.c:64,7'
          Branch Sides:
            - BranchSide:      'istream.c:65,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:66,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:71,7'
          Branch Sides:
            - BranchSide:      'istream.c:72,4'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'istream.c:73,13'
              BranchSideFuncs:
                - str_free
                - i_stream_unref
                - io_stream_free
      Callsites:
        - Src:             'istream.c:64,8'
          Dst:             io_stream_unref
        - Src:             'istream.c:65,4'
          Dst:             i_unreached
        - Src:             'istream.c:69,3'
          Dst:             i_stream_snapshot_free
        - Src:             'istream.c:71,7'
          Dst:             io_stream_unref
        - Src:             'istream.c:72,4'
          Dst:             i_unreached
        - Src:             'istream.c:73,3'
          Dst:             str_free
        - Src:             'istream.c:74,3'
          Dst:             i_stream_unref
        - Src:             'istream.c:75,3'
          Dst:             io_stream_free
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_is_buffer_invalid
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         10
      ICount:          65
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_is_buffer_invalid
      functionUses:    3
      BranchProfiles:
        - Branch String:   'istream.c:713,6'
          Branch Sides:
            - BranchSide:      'istream.c:715,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:717,6'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
        - Branch String:   'istream.c:717,6'
          Branch Sides:
            - BranchSide:      'istream.c:720,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:722,6'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
        - Branch String:   'istream.c:722,6'
          Branch Sides:
            - BranchSide:      'istream.c:726,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:728,36'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
      Callsites:
        - Src:             'istream.c:728,9'
          Dst:             i_stream_is_buffer_invalid
    - functionName:    i_stream_free_buffer
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         12
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - memarea_unref
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'istream.c:468,6'
          Branch Sides:
            - BranchSide:      'istream.c:469,18'
              BranchSideFuncs:
                - memarea_unref
            - BranchSide:      'istream.c:471,13'
              BranchSideFuncs:
                - p_free_internal.6416
        - Branch String:   'istream.c:471,13'
          Branch Sides:
            - BranchSide:      'istream.c:472,3'
              BranchSideFuncs:
                - p_free_internal.6416
            - BranchSide:      'istream.c:475,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:469,3'
          Dst:             memarea_unref
        - Src:             'istream.c:472,3'
          Dst:             p_free_internal
    - functionName:    i_stream_get_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - size_r
      BBCount:         11
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_is_buffer_invalid
      functionUses:    19
      BranchProfiles:
        - Branch String:   'istream.c:736,6'
          Branch Sides:
            - BranchSide:      'istream.c:737,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:741,6'
              BranchSideFuncs:
                - i_stream_is_buffer_invalid
        - Branch String:   'istream.c:741,6'
          Branch Sides:
            - BranchSide:      'istream.c:756,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:766,19'
              BranchSideFuncs: []
        - Branch String:   'istream.c:759,7'
          Branch Sides:
            - BranchSide:      'istream.c:760,20'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:763,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:741,6'
          Dst:             i_stream_is_buffer_invalid
    - functionName:    i_stream_w_buffer_free
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - buf
      BBCount:         5
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:862,2'
          Dst:             p_free_internal
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
        - wanted
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_read_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   './istream.h:229,2'
          Branch Sides:
            - BranchSide:      './istream.h:229,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:229,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             './istream.h:229,2'
          Dst:             i_panic
        - Src:             './istream.h:230,9'
          Dst:             i_stream_read_data
    - functionName:    i_stream_read_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
        - threshold
      BBCount:         26
      ICount:          140
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - i_stream_get_data
        - i_stream_read
      functionUses:    6
      BranchProfiles:
        - Branch String:   'istream.c:800,7'
          Branch Sides:
            - BranchSide:      'istream.c:801,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:804,23'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_get_data
                - i_panic
                - i_stream_get_data
        - Branch String:   'istream.c:805,7'
          Branch Sides:
            - BranchSide:      'istream.c:806,14'
              BranchSideFuncs:
                - i_stream_get_data
                - i_panic
                - i_stream_get_data
                - i_stream_read
            - BranchSide:      'istream.c:807,2'
              BranchSideFuncs:
                - i_stream_get_data
                - i_panic
                - i_stream_get_data
                - i_stream_read
        - Branch String:   'istream.c:807,2'
          Branch Sides:
            - BranchSide:      'istream.c:799,31'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_read
                - i_stream_get_data
                - i_panic
            - BranchSide:      'istream.c:809,30'
              BranchSideFuncs:
                - i_stream_get_data
                - i_panic
        - Branch String:   'istream.c:810,6'
          Branch Sides:
            - BranchSide:      'istream.c:811,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:813,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:813,6'
          Branch Sides:
            - BranchSide:      'istream.c:815,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:818,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:815,3'
          Branch Sides:
            - BranchSide:      'istream.c:815,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:816,3'
              BranchSideFuncs: []
        - Branch String:   'istream.c:818,32'
          Branch Sides:
            - BranchSide:      'istream.c:818,35'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:822,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:818,6'
          Branch Sides:
            - BranchSide:      'istream.c:820,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:822,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:799,13'
          Dst:             i_stream_get_data
        - Src:             'istream.c:804,9'
          Dst:             i_stream_read
        - Src:             'istream.c:809,12'
          Dst:             i_stream_get_data
        - Src:             'istream.c:815,3'
          Dst:             i_panic
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:39,2'
          Dst:             buffer_append
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   './str.h:90,6'
          Branch Sides:
            - BranchSide:      './str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      './str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             './str.h:90,6'
          Dst:             str_len
        - Src:             './str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    i_stream_create_error_str
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream_errno
        - fmt
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_error
        - io_stream_set_verror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:1343,10'
          Dst:             i_stream_create_error
        - Src:             'istream.c:1344,2'
          Dst:             io_stream_set_verror
    - functionName:    i_stream_create_error
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1333
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - stream_errno
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create
        - i_stream_set_name
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:1320,11'
          Dst:             malloc_multiply_check
        - Src:             'istream.c:1320,11'
          Dst:             p_malloc
        - Src:             'istream.c:1331,2'
          Dst:             i_stream_create
        - Src:             'istream.c:1332,2'
          Dst:             i_stream_set_name
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_create
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1263
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - _stream
        - parent
        - fd
        - flags
      BBCount:         38
      ICount:          276
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - i_stream_init_parent
        - io_stream_init
        - memarea_init_empty
      functionUses:    9
      BranchProfiles:
        - Branch String:   'istream.c:1267,6'
          Branch Sides:
            - BranchSide:      'istream.c:1268,24'
              BranchSideFuncs:
                - i_stream_init_parent
                - io_stream_init
            - BranchSide:      'istream.c:1269,11'
              BranchSideFuncs:
                - io_stream_init
                - memarea_init_empty
        - Branch String:   'istream.c:1276,6'
          Branch Sides:
            - BranchSide:      'istream.c:1277,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1278,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1278,6'
          Branch Sides:
            - BranchSide:      'istream.c:1279,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1280,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1280,6'
          Branch Sides:
            - BranchSide:      'istream.c:1281,19'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1285,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1285,6'
          Branch Sides:
            - BranchSide:      'istream.c:1286,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1287,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1287,6'
          Branch Sides:
            - BranchSide:      'istream.c:1288,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1289,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1289,6'
          Branch Sides:
            - BranchSide:      'istream.c:1290,23'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1294,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1294,6'
          Branch Sides:
            - BranchSide:      'istream.c:1295,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1298,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1298,6'
          Branch Sides:
            - BranchSide:      'istream.c:1299,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'istream.c:1301,2'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'istream.c:1310,6'
          Branch Sides:
            - BranchSide:      'istream.c:1310,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1311,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1268,3'
          Dst:             i_stream_init_parent
        - Src:             'istream.c:1272,22'
          Dst:             memarea_init_empty
        - Src:             'istream.c:1308,2'
          Dst:             io_stream_init
    - functionName:    i_stream_set_name
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 16
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - name
      BBCount:         5
      ICount:          44
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup
        - p_free_internal
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:14,2'
          Dst:             p_free_internal
        - Src:             'istream.c:15,39'
          Dst:             i_strdup
    - functionName:    i_stream_init_parent
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1248
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
        - parent
      BBCount:         3
      ICount:          72
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_ref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:1257,2'
          Dst:             i_stream_ref
    - functionName:    i_stream_default_close
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1093
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_close
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1097,6'
          Branch Sides:
            - BranchSide:      'istream.c:1097,6'
              BranchSideFuncs:
                - i_stream_close
            - BranchSide:      'istream.c:1098,18'
              BranchSideFuncs:
                - i_stream_close
      Callsites:
        - Src:             'istream.c:1098,3'
          Dst:             i_stream_close
    - functionName:    i_stream_default_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1102
      functionLinenumberEnd: 1108
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_free_buffer
        - i_stream_unref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:1106,2'
          Dst:             i_stream_free_buffer
        - Src:             'istream.c:1107,2'
          Dst:             i_stream_unref
    - functionName:    i_stream_default_seek_seekable
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1113
      functionLinenumberEnd: 1116
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - stream
        - v_offset
        - mark
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_default_seek_nonseekable
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - stream
        - v_offset
        - mark
      BBCount:         16
      ICount:          135
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - i_stream_get_name
        - i_stream_read
        - i_stream_skip
        - io_stream_set_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:1123,6'
          Branch Sides:
            - BranchSide:      'istream.c:1125,23'
              BranchSideFuncs:
                - i_stream_get_name
                - i_panic
            - BranchSide:      'istream.c:1127,2'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_skip
                - i_stream_skip
                - io_stream_set_error
        - Branch String:   'istream.c:1127,2'
          Branch Sides:
            - BranchSide:      'istream.c:1127,2'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_skip
                - i_stream_skip
                - io_stream_set_error
            - BranchSide:      'istream.c:1128,24'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_skip
                - i_stream_skip
                - io_stream_set_error
        - Branch String:   'istream.c:1131,7'
          Branch Sides:
            - BranchSide:      'istream.c:1132,8'
              BranchSideFuncs:
                - io_stream_set_error
            - BranchSide:      'istream.c:1144,7'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read
                - io_stream_set_error
                - i_stream_skip
        - Branch String:   'istream.c:1132,8'
          Branch Sides:
            - BranchSide:      'istream.c:1134,5'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1136,25'
              BranchSideFuncs:
                - io_stream_set_error
        - Branch String:   'istream.c:1144,7'
          Branch Sides:
            - BranchSide:      'istream.c:1145,19'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read
                - i_stream_skip
                - io_stream_set_error
            - BranchSide:      'istream.c:1147,19'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read
                - i_stream_skip
                - io_stream_set_error
      Callsites:
        - Src:             'istream.c:1125,4'
          Dst:             i_stream_get_name
        - Src:             'istream.c:1124,3'
          Dst:             i_panic
        - Src:             'istream.c:1128,9'
          Dst:             i_stream_read
        - Src:             'istream.c:1136,4'
          Dst:             io_stream_set_error
        - Src:             'istream.c:1145,4'
          Dst:             i_stream_skip
        - Src:             'istream.c:1147,4'
          Dst:             i_stream_skip
    - functionName:    i_stream_default_stat
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1231
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - exact
      BBCount:         19
      ICount:          119
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - i_stream_stat
        - seekable_i_stream_get_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1209,6'
          Branch Sides:
            - BranchSide:      'istream.c:1210,10'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1212,20'
              BranchSideFuncs:
                - i_stream_stat
                - seekable_i_stream_get_size
        - Branch String:   'istream.c:1212,6'
          Branch Sides:
            - BranchSide:      'istream.c:1213,34'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1216,2'
              BranchSideFuncs:
                - seekable_i_stream_get_size
        - Branch String:   'istream.c:1220,7'
          Branch Sides:
            - BranchSide:      'istream.c:1221,35'
              BranchSideFuncs:
                - seekable_i_stream_get_size
            - BranchSide:      'istream.c:1224,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1221,8'
          Branch Sides:
            - BranchSide:      'istream.c:1222,5'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1223,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1212,6'
          Dst:             i_stream_stat
        - Src:             'istream.c:1221,8'
          Dst:             seekable_i_stream_get_size
    - functionName:    i_stream_default_get_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1236
      functionLinenumberEnd: 1244
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - exact
        - size_r
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1237,6'
          Branch Sides:
            - BranchSide:      'istream.c:1238,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1239,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1239,6'
          Branch Sides:
            - BranchSide:      'istream.c:1240,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1242,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_noop_snapshot
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - prev_snapshot
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_default_snapshot
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - prev_snapshot
      BBCount:         19
      ICount:          140
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - i_stream_get_name
        - malloc_multiply_check
        - memarea_ref
        - p_malloc
        - snapshot_has_memarea
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:229,6'
          Branch Sides:
            - BranchSide:      'istream.c:230,7'
              BranchSideFuncs:
                - malloc_multiply_check.6440
                - p_malloc.6441
                - memarea_ref
                - snapshot_has_memarea
            - BranchSide:      'istream.c:242,6'
              BranchSideFuncs:
                - i_stream_get_name
                - i_panic
                - i_panic
        - Branch String:   'istream.c:230,7'
          Branch Sides:
            - BranchSide:      'istream.c:231,29'
              BranchSideFuncs:
                - snapshot_has_memarea
                - malloc_multiply_check.6440
                - p_malloc.6441
                - memarea_ref
            - BranchSide:      'istream.c:236,14'
              BranchSideFuncs:
                - malloc_multiply_check.6440
                - p_malloc.6441
                - memarea_ref
        - Branch String:   'istream.c:231,8'
          Branch Sides:
            - BranchSide:      'istream.c:232,12'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:233,3'
              BranchSideFuncs:
                - malloc_multiply_check.6440
                - p_malloc.6441
                - memarea_ref
        - Branch String:   'istream.c:242,6'
          Branch Sides:
            - BranchSide:      'istream.c:243,7'
              BranchSideFuncs:
                - i_stream_get_name
                - i_panic
                - i_panic
            - BranchSide:      'istream.c:254,3'
              BranchSideFuncs: []
        - Branch String:   'istream.c:243,7'
          Branch Sides:
            - BranchSide:      'istream.c:247,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:251,23'
              BranchSideFuncs:
                - i_stream_get_name
                - i_panic
        - Branch String:   'istream.c:247,4'
          Branch Sides:
            - BranchSide:      'istream.c:247,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:248,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:231,8'
          Dst:             snapshot_has_memarea
        - Src:             'istream.c:236,14'
          Dst:             malloc_multiply_check
        - Src:             'istream.c:236,14'
          Dst:             p_malloc
        - Src:             'istream.c:239,3'
          Dst:             memarea_ref
        - Src:             'istream.c:247,4'
          Dst:             i_panic
        - Src:             'istream.c:251,4'
          Dst:             i_stream_get_name
        - Src:             'istream.c:250,3'
          Dst:             i_panic
    - functionName:    i_stream_default_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - max_size
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_set_max_buffer_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1087,6'
          Branch Sides:
            - BranchSide:      'istream.c:1087,6'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
            - BranchSide:      'istream.c:1088,32'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
      Callsites:
        - Src:             'istream.c:1088,3'
          Dst:             i_stream_set_max_buffer_size
    - functionName:    i_stream_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - max_size
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_set_max_buffer_size
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:159,2'
          Dst:             io_stream_set_max_buffer_size
    - functionName:    snapshot_has_memarea
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - snapshot
        - memarea
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - snapshot_has_memarea
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:216,6'
          Branch Sides:
            - BranchSide:      'istream.c:217,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:218,6'
              BranchSideFuncs:
                - snapshot_has_memarea
        - Branch String:   'istream.c:218,6'
          Branch Sides:
            - BranchSide:      'istream.c:219,31'
              BranchSideFuncs:
                - snapshot_has_memarea
            - BranchSide:      'istream.c:220,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:219,10'
          Dst:             snapshot_has_memarea
    - functionName:    i_stream_get_name
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         13
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    9
      BranchProfiles:
        - Branch String:   'istream.c:20,2'
          Branch Sides:
            - BranchSide:      'istream.c:20,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:21,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:21,2'
          Branch Sides:
            - BranchSide:      'istream.c:22,12'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:26,9'
              BranchSideFuncs: []
        - Branch String:   'istream.c:23,7'
          Branch Sides:
            - BranchSide:      'istream.c:21,2'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:24,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:20,2'
          Dst:             i_panic
    - functionName:    i_stream_stat
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 566
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - exact
        - st_r
      BBCount:         11
      ICount:          93
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'istream.c:569,6'
          Branch Sides:
            - BranchSide:      'istream.c:569,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:569,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:569,6'
          Branch Sides:
            - BranchSide:      'istream.c:570,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:572,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:572,6'
          Branch Sides:
            - BranchSide:      'istream.c:573,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:576,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_close
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_close_full
      functionUses:    4
      BranchProfiles:
        - Branch String:   'istream.c:148,6'
          Branch Sides:
            - BranchSide:      'istream.c:148,6'
              BranchSideFuncs:
                - i_stream_close_full
            - BranchSide:      'istream.c:149,23'
              BranchSideFuncs:
                - i_stream_close_full
      Callsites:
        - Src:             'istream.c:149,3'
          Dst:             i_stream_close_full
    - functionName:    i_stream_close_full
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parents
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_stream_close
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:34,6'
          Branch Sides:
            - BranchSide:      'istream.c:34,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:35,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:31,2'
          Dst:             io_stream_close
    - functionName:    i_stream_ref
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_ref
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:49,2'
          Dst:             io_stream_ref
    - functionName:    i_stream_nonseekable_try_seek
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1155
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - v_offset
      BBCount:         12
      ICount:          122
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_default_seek_nonseekable
        - i_stream_seek
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:1158,6'
          Branch Sides:
            - BranchSide:      'istream.c:1160,17'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream.c:1168,6'
              BranchSideFuncs:
                - i_stream_default_seek_nonseekable
        - Branch String:   'istream.c:1168,6'
          Branch Sides:
            - BranchSide:      'istream.c:1170,18'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1177,37'
              BranchSideFuncs:
                - i_stream_default_seek_nonseekable
        - Branch String:   'istream.c:1172,7'
          Branch Sides:
            - BranchSide:      'istream.c:1173,23'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1174,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1160,3'
          Dst:             i_stream_seek
        - Src:             'istream.c:1177,3'
          Dst:             i_stream_default_seek_nonseekable
    - functionName:    i_stream_unset_io
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - io
      BBCount:         10
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_get_root_io
        - io_is_pending
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1073,2'
          Branch Sides:
            - BranchSide:      'istream.c:1073,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1074,20'
              BranchSideFuncs:
                - io_is_pending
        - Branch String:   'istream.c:1074,6'
          Branch Sides:
            - BranchSide:      'istream.c:1074,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1075,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1071,11'
          Dst:             i_stream_get_root_io
        - Src:             'istream.c:1073,2'
          Dst:             i_panic
        - Src:             'istream.c:1074,6'
          Dst:             io_is_pending
    - functionName:    i_stream_set_io
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1058
      functionLinenumberEnd: 1067
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - io
      BBCount:         10
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_get_root_io
        - io_set_pending
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:1061,2'
          Branch Sides:
            - BranchSide:      'istream.c:1061,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:1062,28'
              BranchSideFuncs:
                - io_set_pending
        - Branch String:   'istream.c:1063,6'
          Branch Sides:
            - BranchSide:      'istream.c:1063,6'
              BranchSideFuncs:
                - io_set_pending
            - BranchSide:      'istream.c:1064,18'
              BranchSideFuncs:
                - io_set_pending
      Callsites:
        - Src:             'istream.c:1059,11'
          Dst:             i_stream_get_root_io
        - Src:             'istream.c:1061,2'
          Dst:             i_panic
        - Src:             'istream.c:1064,3'
          Dst:             io_set_pending
    - functionName:    i_stream_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1053
      functionLinenumberEnd: 1055
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_switch_ioloop_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:1054,2'
          Dst:             i_stream_switch_ioloop_to
    - functionName:    i_stream_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1040
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - ioloop
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - io_stream_switch_ioloop_to
      functionUses:    4
      BranchProfiles:
        - Branch String:   'istream.c:1044,7'
          Branch Sides:
            - BranchSide:      'istream.c:1045,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1048,12'
              BranchSideFuncs: []
        - Branch String:   'istream.c:1049,2'
          Branch Sides:
            - BranchSide:      'istream.c:1044,7'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1050,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:1041,2'
          Dst:             io_stream_switch_ioloop_to
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    i_stream_add_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 1001
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _stream
        - data
        - size
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_memcpy
        - i_stream_try_alloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:1005,6'
          Branch Sides:
            - BranchSide:      'istream.c:1006,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1007,27'
              BranchSideFuncs:
                - i_stream_try_alloc
                - i_memcpy.6464
        - Branch String:   'istream.c:1008,6'
          Branch Sides:
            - BranchSide:      'istream.c:1009,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:1011,2'
              BranchSideFuncs:
                - i_memcpy.6464
      Callsites:
        - Src:             'istream.c:1007,8'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:1011,2'
          Dst:             i_memcpy
    - functionName:    i_stream_try_alloc
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - wanted_size
        - size_r
      BBCount:         41
      ICount:          244
      EdgeCount:       50
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - i_stream_compress
        - i_stream_get_max_buffer_size
        - i_stream_grow_buffer
        - i_stream_w_buffer_realloc
        - memarea_get_refcount
      functionUses:    9
      BranchProfiles:
        - Branch String:   'istream.c:920,2'
          Branch Sides:
            - BranchSide:      'istream.c:920,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:921,2'
              BranchSideFuncs:
                - i_panic
                - i_stream_get_max_buffer_size
                - i_stream_grow_buffer
                - i_stream_compress
                - memarea_get_refcount
                - i_stream_w_buffer_realloc
                - i_panic
        - Branch String:   'istream.c:921,2'
          Branch Sides:
            - BranchSide:      'istream.c:921,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:923,6'
              BranchSideFuncs:
                - i_panic
                - i_stream_get_max_buffer_size
                - i_stream_grow_buffer
                - i_stream_compress
                - memarea_get_refcount
                - i_stream_w_buffer_realloc
        - Branch String:   'istream.c:923,6'
          Branch Sides:
            - BranchSide:      'istream.c:924,7'
              BranchSideFuncs:
                - i_stream_get_max_buffer_size
                - i_panic
                - i_stream_grow_buffer
                - i_stream_compress
                - memarea_get_refcount
                - i_stream_w_buffer_realloc
            - BranchSide:      'istream.c:940,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:924,7'
          Branch Sides:
            - BranchSide:      'istream.c:926,8'
              BranchSideFuncs:
                - i_stream_compress
                - i_panic
                - memarea_get_refcount
                - i_stream_w_buffer_realloc
            - BranchSide:      'istream.c:934,14'
              BranchSideFuncs:
                - i_stream_get_max_buffer_size
                - i_panic
                - i_stream_grow_buffer
        - Branch String:   'istream.c:926,32'
          Branch Sides:
            - BranchSide:      'istream.c:927,29'
              BranchSideFuncs:
                - memarea_get_refcount
                - i_stream_compress
                - i_panic
                - i_stream_w_buffer_realloc
            - BranchSide:      'istream.c:933,22'
              BranchSideFuncs:
                - i_stream_compress
                - i_panic
        - Branch String:   'istream.c:926,8'
          Branch Sides:
            - BranchSide:      'istream.c:931,31'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
                - i_stream_compress
                - i_panic
            - BranchSide:      'istream.c:933,22'
              BranchSideFuncs:
                - i_stream_compress
                - i_panic
        - Branch String:   'istream.c:940,30'
          Branch Sides:
            - BranchSide:      'istream.c:941,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:942,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:940,6'
          Branch Sides:
            - BranchSide:      'istream.c:942,13'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:944,22'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:946,7'
          Branch Sides:
            - BranchSide:      'istream.c:947,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:949,14'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:951,2'
          Branch Sides:
            - BranchSide:      'istream.c:951,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:951,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:951,2'
          Branch Sides:
            - BranchSide:      'istream.c:951,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:951,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:920,2'
          Dst:             i_panic
        - Src:             'istream.c:921,2'
          Dst:             i_panic
        - Src:             'istream.c:927,8'
          Dst:             memarea_get_refcount
        - Src:             'istream.c:931,5'
          Dst:             i_stream_w_buffer_realloc
        - Src:             'istream.c:933,4'
          Dst:             i_stream_compress
        - Src:             'istream.c:934,36'
          Dst:             i_stream_get_max_buffer_size
        - Src:             'istream.c:936,4'
          Dst:             i_stream_grow_buffer
        - Src:             'istream.c:951,2'
          Dst:             i_panic
    - functionName:    i_stream_w_buffer_realloc
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - old_size
      BBCount:         19
      ICount:          133
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - i_malloc
        - i_memcpy
        - i_panic
        - i_realloc
        - i_stream_w_buffer_free
        - memarea_free_without_callback
        - memarea_get_refcount
        - memarea_init
        - memarea_unref
      functionUses:    3
      BranchProfiles:
        - Branch String:   'istream.c:870,30'
          Branch Sides:
            - BranchSide:      'istream.c:871,27'
              BranchSideFuncs:
                - memarea_get_refcount
                - i_malloc
                - memarea_init
                - memarea_unref
                - i_memcpy.6464
                - i_panic
                - memarea_free_without_callback
                - i_realloc
            - BranchSide:      'istream.c:878,25'
              BranchSideFuncs:
                - i_malloc
                - memarea_init
                - memarea_unref
                - i_memcpy.6464
                - i_panic
        - Branch String:   'istream.c:870,6'
          Branch Sides:
            - BranchSide:      'istream.c:874,34'
              BranchSideFuncs:
                - memarea_free_without_callback
                - i_realloc
                - memarea_init
            - BranchSide:      'istream.c:878,25'
              BranchSideFuncs:
                - i_malloc
                - memarea_init
                - memarea_unref
                - i_memcpy.6464
                - i_panic
        - Branch String:   'istream.c:879,7'
          Branch Sides:
            - BranchSide:      'istream.c:880,4'
              BranchSideFuncs:
                - i_memcpy.6464
                - memarea_init
                - memarea_unref
                - i_panic
            - BranchSide:      'istream.c:883,7'
              BranchSideFuncs:
                - memarea_init
                - memarea_unref
        - Branch String:   'istream.c:880,4'
          Branch Sides:
            - BranchSide:      'istream.c:880,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:881,4'
              BranchSideFuncs:
                - i_memcpy.6464
                - memarea_init
                - memarea_unref
      Callsites:
        - Src:             'istream.c:871,6'
          Dst:             memarea_get_refcount
        - Src:             'istream.c:874,3'
          Dst:             memarea_free_without_callback
        - Src:             'istream.c:875,16'
          Dst:             i_realloc
        - Src:             'istream.c:878,16'
          Dst:             i_malloc
        - Src:             'istream.c:880,4'
          Dst:             i_panic
        - Src:             'istream.c:881,4'
          Dst:             i_memcpy
        - Src:             'istream.c:884,4'
          Dst:             memarea_unref
        - Src:             'istream.c:890,20'
          Dst:             memarea_init
        - Src:             'istream.c:890,20'
          Dst:             i_stream_w_buffer_free
    - functionName:    i_stream_compress
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 847
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         13
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - memarea_get_refcount
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:848,2'
          Branch Sides:
            - BranchSide:      'istream.c:848,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:848,2'
              BranchSideFuncs:
                - memarea_get_refcount
                - i_panic
        - Branch String:   'istream.c:848,2'
          Branch Sides:
            - BranchSide:      'istream.c:848,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:851,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:851,6'
          Branch Sides:
            - BranchSide:      'istream.c:851,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:852,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:848,2'
          Dst:             memarea_get_refcount
        - Src:             'istream.c:848,2'
          Dst:             i_panic
    - functionName:    i_stream_get_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         8
      ICount:          52
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'istream.c:167,7'
          Branch Sides:
            - BranchSide:      'istream.c:168,15'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:169,12'
              BranchSideFuncs: []
        - Branch String:   'istream.c:170,2'
          Branch Sides:
            - BranchSide:      'istream.c:167,7'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:171,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_grow_buffer
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 895
      functionLinenumberEnd: 915
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - bytes
      BBCount:         16
      ICount:          125
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - i_stream_get_max_buffer_size
        - i_stream_w_buffer_realloc
        - nearest_power
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:901,6'
          Branch Sides:
            - BranchSide:      'istream.c:902,25'
              BranchSideFuncs:
                - i_stream_get_max_buffer_size
                - i_stream_w_buffer_realloc
                - i_panic
            - BranchSide:      'istream.c:904,39'
              BranchSideFuncs:
                - nearest_power
                - i_stream_get_max_buffer_size
                - i_stream_w_buffer_realloc
                - i_panic
        - Branch String:   'istream.c:907,2'
          Branch Sides:
            - BranchSide:      'istream.c:907,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:908,6'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
        - Branch String:   'istream.c:908,6'
          Branch Sides:
            - BranchSide:      'istream.c:909,25'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
            - BranchSide:      'istream.c:911,6'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
        - Branch String:   'istream.c:911,6'
          Branch Sides:
            - BranchSide:      'istream.c:912,25'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:914,29'
              BranchSideFuncs:
                - i_stream_w_buffer_realloc
      Callsites:
        - Src:             'istream.c:904,25'
          Dst:             nearest_power
        - Src:             'istream.c:906,13'
          Dst:             i_stream_get_max_buffer_size
        - Src:             'istream.c:907,2'
          Dst:             i_panic
        - Src:             'istream.c:914,3'
          Dst:             i_stream_w_buffer_realloc
    - functionName:    i_stream_memarea_detach
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 988
      functionLinenumberEnd: 997
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memarea_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:989,6'
          Branch Sides:
            - BranchSide:      'istream.c:989,6'
              BranchSideFuncs:
                - memarea_unref
            - BranchSide:      'istream.c:992,18'
              BranchSideFuncs:
                - memarea_unref
      Callsites:
        - Src:             'istream.c:992,3'
          Dst:             memarea_unref
    - functionName:    i_stream_alloc
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - size
      BBCount:         10
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_try_alloc
        - i_stream_w_buffer_realloc
        - nearest_power
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:976,6'
          Branch Sides:
            - BranchSide:      'istream.c:976,6'
              BranchSideFuncs:
                - nearest_power
                - i_stream_w_buffer_realloc
                - i_stream_try_alloc
                - i_panic
            - BranchSide:      'istream.c:977,14'
              BranchSideFuncs:
                - nearest_power
                - i_stream_w_buffer_realloc
                - i_stream_try_alloc
                - i_panic
        - Branch String:   'istream.c:982,3'
          Branch Sides:
            - BranchSide:      'istream.c:982,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:983,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:975,8'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:978,25'
          Dst:             nearest_power
        - Src:             'istream.c:979,3'
          Dst:             i_stream_w_buffer_realloc
        - Src:             'istream.c:981,9'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:982,3'
          Dst:             i_panic
    - functionName:    i_stream_try_alloc_avoid_compress
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 969
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - wanted_size
        - size_r
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_try_alloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:965,10'
          Branch Sides:
            - BranchSide:      'istream.c:965,13'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:966,10'
              BranchSideFuncs: []
        - Branch String:   'istream.c:965,6'
          Branch Sides:
            - BranchSide:      'istream.c:966,10'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:968,28'
              BranchSideFuncs:
                - i_stream_try_alloc
      Callsites:
        - Src:             'istream.c:963,13'
          Dst:             i_stream_try_alloc
        - Src:             'istream.c:968,9'
          Dst:             i_stream_try_alloc
    - functionName:    i_stream_read_more
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
      BBCount:         7
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_read_bytes
      functionUses:    1
      BranchProfiles:
        - Branch String:   './istream.h:238,2'
          Branch Sides:
            - BranchSide:      './istream.h:238,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:238,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './istream.h:237,12'
          Dst:             i_stream_read_bytes
        - Src:             './istream.h:238,2'
          Dst:             i_panic
    - functionName:    i_stream_read_limited
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 827
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
        - limit
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_get_data
        - i_stream_read_more
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:832,6'
          Branch Sides:
            - BranchSide:      'istream.c:833,13'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:837,24'
              BranchSideFuncs:
                - i_stream_read_more.6481
        - Branch String:   'istream.c:841,6'
          Branch Sides:
            - BranchSide:      'istream.c:842,13'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:843,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:831,12'
          Dst:             i_stream_get_data
        - Src:             'istream.c:838,8'
          Dst:             i_stream_read_more
    - functionName:    i_stream_get_modifiable_data
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - size_r
      BBCount:         7
      ICount:          65
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:783,36'
          Branch Sides:
            - BranchSide:      'istream.c:783,39'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:784,4'
              BranchSideFuncs: []
        - Branch String:   'istream.c:783,6'
          Branch Sides:
            - BranchSide:      'istream.c:784,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:788,19'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_last_line_crlf
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_read_next_line
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         12
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - i_stream_get_data_size
        - i_stream_last_line
        - i_stream_next_line
        - i_stream_read
        - io_stream_set_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:685,7'
          Branch Sides:
            - BranchSide:      'istream.c:686,4'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:688,25'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_last_line
                - i_stream_get_data_size
                - io_stream_set_error
                - __errno_location
                - i_stream_next_line
        - Branch String:   'istream.c:688,3'
          Branch Sides:
            - BranchSide:      'istream.c:683,2'
              BranchSideFuncs:
                - i_stream_next_line
                - i_stream_read
                - i_stream_last_line
                - i_stream_get_data_size
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'istream.c:690,25'
              BranchSideFuncs:
                - i_stream_get_data_size
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'istream.c:698,30'
              BranchSideFuncs:
                - i_stream_last_line
            - BranchSide:      'istream.c:700,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:684,10'
          Dst:             i_stream_next_line
        - Src:             'istream.c:688,11'
          Dst:             i_stream_read
        - Src:             'istream.c:693,5'
          Dst:             i_stream_get_data_size
        - Src:             'istream.c:690,4'
          Dst:             io_stream_set_error
        - Src:             'istream.c:694,27'
          Dst:             __errno_location
        - Src:             'istream.c:698,11'
          Dst:             i_stream_last_line
    - functionName:    i_stream_next_line
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         8
      ICount:          78
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_last_line
        - i_stream_next_line_finish
        - memchr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:666,6'
          Branch Sides:
            - BranchSide:      'istream.c:667,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:669,15'
              BranchSideFuncs:
                - memchr
                - i_stream_last_line
                - i_stream_next_line_finish
        - Branch String:   'istream.c:671,6'
          Branch Sides:
            - BranchSide:      'istream.c:672,36'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:675,29'
              BranchSideFuncs:
                - i_stream_last_line
      Callsites:
        - Src:             'istream.c:669,8'
          Dst:             memchr
        - Src:             'istream.c:672,10'
          Dst:             i_stream_next_line_finish
        - Src:             'istream.c:675,10'
          Dst:             i_stream_last_line
    - functionName:    i_stream_last_line
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_next_line_finish
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:653,27'
          Branch Sides:
            - BranchSide:      'istream.c:653,30'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:658,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:653,60'
          Branch Sides:
            - BranchSide:      'istream.c:654,6'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:658,2'
              BranchSideFuncs: []
        - Branch String:   'istream.c:653,6'
          Branch Sides:
            - BranchSide:      'istream.c:656,36'
              BranchSideFuncs:
                - i_stream_next_line_finish
            - BranchSide:      'istream.c:658,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:656,10'
          Dst:             i_stream_next_line_finish
    - functionName:    i_stream_next_line_finish
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - i
      BBCount:         24
      ICount:          203
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - str_append_data
        - str_c_modifiable
        - str_new
        - str_truncate
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:620,23'
          Branch Sides:
            - BranchSide:      'istream.c:620,26'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
                - str_new
            - BranchSide:      'istream.c:624,9'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
                - str_new
        - Branch String:   'istream.c:620,6'
          Branch Sides:
            - BranchSide:      'istream.c:621,9'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
                - str_new
            - BranchSide:      'istream.c:624,9'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
                - str_new
        - Branch String:   'istream.c:628,41'
          Branch Sides:
            - BranchSide:      'istream.c:629,6'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
                - str_new
            - BranchSide:      'istream.c:635,7'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
                - str_new
        - Branch String:   'istream.c:628,6'
          Branch Sides:
            - BranchSide:      'istream.c:631,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:635,7'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
                - str_new
        - Branch String:   'istream.c:635,7'
          Branch Sides:
            - BranchSide:      'istream.c:636,31'
              BranchSideFuncs:
                - str_new
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
            - BranchSide:      'istream.c:637,16'
              BranchSideFuncs:
                - str_truncate.6437
                - str_c_modifiable
                - str_append_data.6436
        - Branch String:   'istream.c:638,7'
          Branch Sides:
            - BranchSide:      'istream.c:639,20'
              BranchSideFuncs:
                - str_append_data.6436
                - str_c_modifiable
            - BranchSide:      'istream.c:641,26'
              BranchSideFuncs:
                - str_c_modifiable
        - Branch String:   'istream.c:644,6'
          Branch Sides:
            - BranchSide:      'istream.c:644,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:645,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:636,23'
          Dst:             str_new
        - Src:             'istream.c:637,3'
          Dst:             str_truncate
        - Src:             'istream.c:639,4'
          Dst:             str_append_data
        - Src:             'istream.c:641,9'
          Dst:             str_c_modifiable
    - functionName:    i_stream_get_absolute_offset
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:608,2'
          Branch Sides:
            - BranchSide:      'istream.c:609,17'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:612,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_read_eof
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 602
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_get_data_size
        - i_stream_have_bytes_left
        - i_stream_read
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:600,6'
          Branch Sides:
            - BranchSide:      'istream.c:600,6'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_have_bytes_left
            - BranchSide:      'istream.c:601,23'
              BranchSideFuncs:
                - i_stream_read
                - i_stream_have_bytes_left
      Callsites:
        - Src:             'istream.c:600,6'
          Dst:             i_stream_get_data_size
        - Src:             'istream.c:601,9'
          Dst:             i_stream_read
        - Src:             'istream.c:602,10'
          Dst:             i_stream_have_bytes_left
    - functionName:    i_stream_have_bytes_left
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_get_data_size
      functionUses:    7
      BranchProfiles:
        - Branch String:   'istream.c:595,44'
          Branch Sides:
            - BranchSide:      'istream.c:595,44'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:595,48'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:595,9'
          Dst:             i_stream_get_data_size
    - functionName:    i_stream_get_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - exact
        - size_r
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream.c:584,6'
          Branch Sides:
            - BranchSide:      'istream.c:584,6'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:584,6'
              BranchSideFuncs: []
        - Branch String:   'istream.c:584,6'
          Branch Sides:
            - BranchSide:      'istream.c:585,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:588,13'
              BranchSideFuncs: []
        - Branch String:   'istream.c:588,6'
          Branch Sides:
            - BranchSide:      'istream.c:589,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:590,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_sync
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         11
      ICount:          73
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_update
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:556,6'
          Branch Sides:
            - BranchSide:      'istream.c:556,6'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:556,6'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:556,6'
          Branch Sides:
            - BranchSide:      'istream.c:557,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:559,6'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:559,6'
          Branch Sides:
            - BranchSide:      'istream.c:559,6'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:560,3'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:561,3'
          Dst:             i_stream_update
    - functionName:    i_stream_seek_mark
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - v_offset
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_update
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:544,6'
          Branch Sides:
            - BranchSide:      'istream.c:544,6'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:544,6'
              BranchSideFuncs:
                - i_stream_update
        - Branch String:   'istream.c:544,6'
          Branch Sides:
            - BranchSide:      'istream.c:545,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:547,2'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:549,2'
          Dst:             i_stream_update
    - functionName:    i_stream_read_copy_from_parent
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - istream
      BBCount:         28
      ICount:          221
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - i_stream_get_data
        - i_stream_read_memarea
        - i_stream_update
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream.c:441,6'
          Branch Sides:
            - BranchSide:      'istream.c:442,7'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
                - i_stream_update
            - BranchSide:      'istream.c:443,7'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_update
                - i_panic
                - i_stream_update
        - Branch String:   'istream.c:451,30'
          Branch Sides:
            - BranchSide:      'istream.c:451,33'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
                - i_stream_update
                - i_stream_read_memarea
                - i_stream_get_data
            - BranchSide:      'istream.c:451,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
                - i_stream_update
                - i_stream_read_memarea
                - i_stream_get_data
        - Branch String:   'istream.c:451,2'
          Branch Sides:
            - BranchSide:      'istream.c:0,0'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_update
                - i_panic
                - i_stream_update
            - BranchSide:      'istream.c:444,31'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_update
                - i_panic
                - i_stream_update
        - Branch String:   'istream.c:452,6'
          Branch Sides:
            - BranchSide:      'istream.c:453,19'
              BranchSideFuncs:
                - i_stream_update
            - BranchSide:      'istream.c:457,8'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:457,8'
          Branch Sides:
            - BranchSide:      'istream.c:457,38'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
            - BranchSide:      'istream.c:458,4'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:460,2'
          Branch Sides:
            - BranchSide:      'istream.c:460,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
            - BranchSide:      'istream.c:460,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:460,2'
          Branch Sides:
            - BranchSide:      'istream.c:460,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
            - BranchSide:      'istream.c:460,2'
              BranchSideFuncs:
                - i_stream_update
                - i_panic
        - Branch String:   'istream.c:460,2'
          Branch Sides:
            - BranchSide:      'istream.c:460,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:462,18'
              BranchSideFuncs:
                - i_stream_update
      Callsites:
        - Src:             'istream.c:440,19'
          Dst:             i_stream_get_data
        - Src:             'istream.c:444,9'
          Dst:             i_stream_read_memarea
        - Src:             'istream.c:447,20'
          Dst:             i_stream_get_data
        - Src:             'istream.c:453,3'
          Dst:             i_stream_update
        - Src:             'istream.c:460,2'
          Dst:             i_panic
        - Src:             'istream.c:462,2'
          Dst:             i_stream_update
    - functionName:    i_stream_get_last_read_time
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - tv_r
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_read_more_memarea
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_get_data
        - i_stream_read_memarea
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:418,6'
          Branch Sides:
            - BranchSide:      'istream.c:419,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:421,34'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
      Callsites:
        - Src:             'istream.c:417,12'
          Dst:             i_stream_get_data
        - Src:             'istream.c:421,12'
          Dst:             i_stream_read_memarea
        - Src:             'istream.c:422,12'
          Dst:             i_stream_get_data
    - functionName:    i_stream_set_blocking
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - blocking
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - fd_set_nonblock
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:193,37'
          Branch Sides:
            - BranchSide:      'istream.c:194,7'
              BranchSideFuncs:
                - fd_set_nonblock
            - BranchSide:      'istream.c:198,12'
              BranchSideFuncs:
                - fd_set_nonblock
        - Branch String:   'istream.c:193,7'
          Branch Sides:
            - BranchSide:      'istream.c:195,20'
              BranchSideFuncs:
                - fd_set_nonblock
            - BranchSide:      'istream.c:198,12'
              BranchSideFuncs:
                - fd_set_nonblock
        - Branch String:   'istream.c:199,2'
          Branch Sides:
            - BranchSide:      'istream.c:192,22'
              BranchSideFuncs:
                - fd_set_nonblock
            - BranchSide:      'istream.c:200,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:195,4'
          Dst:             fd_set_nonblock
    - functionName:    i_stream_set_persistent_buffers
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:184,2'
          Branch Sides:
            - BranchSide:      'istream.c:182,49'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:185,1'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_set_return_partial_line
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_set_init_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - size
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_get_disconnect_reason
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_get_disconnect_reason
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:143,9'
          Dst:             io_stream_get_disconnect_reason
    - functionName:    i_stream_get_error
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         15
      ICount:          93
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strerror
      functionUses:    9
      BranchProfiles:
        - Branch String:   'istream.c:129,6'
          Branch Sides:
            - BranchSide:      'istream.c:130,10'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:132,11'
              BranchSideFuncs:
                - strerror
        - Branch String:   'istream.c:132,2'
          Branch Sides:
            - BranchSide:      'istream.c:133,7'
              BranchSideFuncs:
                - strerror
            - BranchSide:      'istream.c:138,18'
              BranchSideFuncs:
                - strerror
        - Branch String:   'istream.c:133,7'
          Branch Sides:
            - BranchSide:      'istream.c:134,4'
              BranchSideFuncs:
                - strerror
            - BranchSide:      'istream.c:135,7'
              BranchSideFuncs:
                - strerror
        - Branch String:   'istream.c:135,7'
          Branch Sides:
            - BranchSide:      'istream.c:136,11'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:137,2'
              BranchSideFuncs:
                - strerror
      Callsites:
        - Src:             'istream.c:138,9'
          Dst:             strerror
    - functionName:    i_stream_set_error
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - stream_errno
        - fmt
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_set_verror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:118,2'
          Dst:             io_stream_set_verror
    - functionName:    i_stream_copy_fd
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - source
      BBCount:         11
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_get_fd
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream.c:105,2'
          Branch Sides:
            - BranchSide:      'istream.c:105,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:106,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream.c:106,2'
          Branch Sides:
            - BranchSide:      'istream.c:106,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream.c:106,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream.c:103,11'
          Dst:             i_stream_get_fd
        - Src:             'istream.c:105,2'
          Dst:             i_panic
        - Src:             'istream.c:106,2'
          Dst:             i_panic
    - functionName:    i_stream_get_fd
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_remove_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - callback
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_remove_destroy_callback
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:90,2'
          Dst:             io_stream_remove_destroy_callback
    - functionName:    i_stream_add_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - callback
        - context
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_add_destroy_callback
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream.c:83,2'
          Dst:             io_stream_add_destroy_callback
    - functionName:    i_stream_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream.c'
      linkageType:     externalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_close_full
        - i_stream_unref
      functionUses:    6
      BranchProfiles:
        - Branch String:   'istream.c:40,6'
          Branch Sides:
            - BranchSide:      'istream.c:41,3'
              BranchSideFuncs: []
            - BranchSide:      'istream.c:43,23'
              BranchSideFuncs:
                - i_stream_close_full
                - i_stream_unref
      Callsites:
        - Src:             'istream.c:43,2'
          Dst:             i_stream_close_full
        - Src:             'istream.c:44,2'
          Dst:             i_stream_unref
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    i_stream_chain_read_next
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cstream
      BBCount:         50
      ICount:          345
      EdgeCount:       61
      CyclomaticComplexity: 13
      functionsReached:
        - i_memcpy
        - i_panic
        - i_stream_alloc
        - i_stream_get_data
        - i_stream_get_data_size
        - i_stream_memarea_detach
        - i_stream_seek
        - i_stream_skip
        - i_stream_unref
        - memarea_get_refcount
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-chain.c:112,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:112,2'
              BranchSideFuncs:
                - i_stream_get_data
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
                - i_panic
                - i_panic
            - BranchSide:      'istream-chain.c:112,2'
              BranchSideFuncs:
                - i_stream_get_data
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:112,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:112,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:113,2'
              BranchSideFuncs:
                - i_stream_get_data
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
                - i_panic
        - Branch String:   'istream-chain.c:113,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:113,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:115,15'
              BranchSideFuncs:
                - i_stream_get_data
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
        - Branch String:   'istream-chain.c:118,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:118,2'
              BranchSideFuncs:
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
            - BranchSide:      'istream-chain.c:118,2'
              BranchSideFuncs:
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
        - Branch String:   'istream-chain.c:118,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:118,2'
              BranchSideFuncs:
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
            - BranchSide:      'istream-chain.c:118,2'
              BranchSideFuncs:
                - p_free_internal.6546
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
        - Branch String:   'istream-chain.c:124,19'
          Branch Sides:
            - BranchSide:      'istream-chain.c:124,22'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
                - i_stream_seek
            - BranchSide:      'istream-chain.c:127,6'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
        - Branch String:   'istream-chain.c:124,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:125,17'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
            - BranchSide:      'istream-chain.c:127,6'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
        - Branch String:   'istream-chain.c:127,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:131,18'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
                - i_panic
            - BranchSide:      'istream-chain.c:140,3'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
        - Branch String:   'istream-chain.c:133,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:133,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:134,11'
              BranchSideFuncs:
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_alloc
                - i_memcpy.6538
                - memarea_get_refcount
                - i_stream_memarea_detach
        - Branch String:   'istream-chain.c:145,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:145,6'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - memarea_get_refcount
                - i_stream_memarea_detach
            - BranchSide:      'istream-chain.c:146,7'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - memarea_get_refcount
                - i_stream_memarea_detach
        - Branch String:   'istream-chain.c:146,40'
          Branch Sides:
            - BranchSide:      'istream-chain.c:147,28'
              BranchSideFuncs:
                - memarea_get_refcount
                - i_stream_alloc
                - i_memcpy.6538
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
                - i_stream_memarea_detach
            - BranchSide:      'istream-chain.c:149,3'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
        - Branch String:   'istream-chain.c:146,7'
          Branch Sides:
            - BranchSide:      'istream-chain.c:148,29'
              BranchSideFuncs:
                - i_stream_memarea_detach
                - i_stream_alloc
                - i_memcpy.6538
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
            - BranchSide:      'istream-chain.c:149,3'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_stream_get_data_size
                - i_stream_skip
                - i_stream_unref
      Callsites:
        - Src:             'istream-chain.c:112,2'
          Dst:             i_panic
        - Src:             'istream-chain.c:113,2'
          Dst:             i_panic
        - Src:             'istream-chain.c:116,9'
          Dst:             i_stream_get_data
        - Src:             'istream-chain.c:119,2'
          Dst:             p_free_internal
        - Src:             'istream-chain.c:125,3'
          Dst:             i_stream_seek
        - Src:             'istream-chain.c:133,3'
          Dst:             i_panic
        - Src:             'istream-chain.c:147,7'
          Dst:             memarea_get_refcount
        - Src:             'istream-chain.c:148,4'
          Dst:             i_stream_memarea_detach
        - Src:             'istream-chain.c:149,3'
          Dst:             i_stream_alloc
        - Src:             'istream-chain.c:149,3'
          Dst:             i_memcpy
        - Src:             'istream-chain.c:155,28'
          Dst:             i_stream_get_data_size
        - Src:             'istream-chain.c:155,2'
          Dst:             i_stream_skip
        - Src:             'istream-chain.c:156,2'
          Dst:             i_stream_unref
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_chain_skip
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - cstream
      BBCount:         30
      ICount:          204
      EdgeCount:       35
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - i_stream_skip
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-chain.c:165,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:165,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:166,18'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:168,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:170,2'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
                - i_panic
            - BranchSide:      'istream-chain.c:170,13'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:170,13'
          Branch Sides:
            - BranchSide:      'istream-chain.c:172,32'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
                - i_panic
            - BranchSide:      'istream-chain.c:176,20'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:179,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:180,3'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
                - i_panic
            - BranchSide:      'istream-chain.c:185,23'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
        - Branch String:   'istream-chain.c:180,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:180,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:181,18'
              BranchSideFuncs:
                - i_stream_skip
                - i_panic
        - Branch String:   'istream-chain.c:186,19'
          Branch Sides:
            - BranchSide:      'istream-chain.c:186,22'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:187,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-chain.c:186,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:187,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:190,16'
              BranchSideFuncs:
                - i_stream_skip
        - Branch String:   'istream-chain.c:187,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:187,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:188,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-chain.c:165,2'
          Dst:             i_panic
        - Src:             'istream-chain.c:180,3'
          Dst:             i_panic
        - Src:             'istream-chain.c:187,3'
          Dst:             i_panic
        - Src:             'istream-chain.c:190,2'
          Dst:             i_stream_skip
    - functionName:    i_stream_chain_snapshot
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - prev_snapshot
      BBCount:         18
      ICount:          138
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - i_stream_default_snapshot
        - i_stream_ref
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-chain.c:297,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:300,3'
              BranchSideFuncs:
                - i_stream_default_snapshot
                - i_panic
            - BranchSide:      'istream-chain.c:305,3'
              BranchSideFuncs:
                - malloc_multiply_check.6552
                - p_malloc.6553
                - i_stream_ref
        - Branch String:   'istream-chain.c:300,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:300,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:301,36'
              BranchSideFuncs:
                - i_stream_default_snapshot
        - Branch String:   'istream-chain.c:307,19'
          Branch Sides:
            - BranchSide:      'istream-chain.c:307,22'
              BranchSideFuncs: []
            - BranchSide:      'istream-chain.c:308,10'
              BranchSideFuncs: []
        - Branch String:   'istream-chain.c:307,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:308,10'
              BranchSideFuncs: []
            - BranchSide:      'istream-chain.c:310,41'
              BranchSideFuncs:
                - malloc_multiply_check.6552
                - p_malloc.6553
                - i_stream_ref
        - Branch String:   'istream-chain.c:314,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:320,23'
              BranchSideFuncs:
                - i_stream_ref
            - BranchSide:      'istream-chain.c:323,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-chain.c:300,3'
          Dst:             i_panic
        - Src:             'istream-chain.c:301,10'
          Dst:             i_stream_default_snapshot
        - Src:             'istream-chain.c:311,38'
          Dst:             malloc_multiply_check
        - Src:             'istream-chain.c:311,38'
          Dst:             p_malloc
        - Src:             'istream-chain.c:321,3'
          Dst:             i_stream_ref
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_chain_read
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         55
      ICount:          405
      EdgeCount:       66
      CyclomaticComplexity: 13
      functionsReached:
        - i_memcpy
        - i_panic
        - i_stream_alloc
        - i_stream_chain_read
        - i_stream_chain_read_next
        - i_stream_chain_skip
        - i_stream_get_data
        - i_stream_get_error
        - i_stream_get_name
        - i_stream_read_memarea
        - io_stream_set_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-chain.c:204,19'
          Branch Sides:
            - BranchSide:      'istream-chain.c:204,22'
              BranchSideFuncs:
                - i_stream_chain_skip
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-chain.c:209,27'
              BranchSideFuncs:
                - i_stream_chain_skip
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:204,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:205,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-chain.c:209,27'
              BranchSideFuncs:
                - i_stream_chain_skip
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:209,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:210,3'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-chain.c:211,2'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:211,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:211,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:213,2'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:213,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:213,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:214,17'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-chain.c:217,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:218,7'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-chain.c:221,3'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-chain.c:221,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:221,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:222,31'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
        - Branch String:   'istream-chain.c:223,17'
          Branch Sides:
            - BranchSide:      'istream-chain.c:223,20'
              BranchSideFuncs: []
            - BranchSide:      'istream-chain.c:224,11'
              BranchSideFuncs: []
        - Branch String:   'istream-chain.c:223,7'
          Branch Sides:
            - BranchSide:      'istream-chain.c:224,11'
              BranchSideFuncs: []
            - BranchSide:      'istream-chain.c:226,7'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
        - Branch String:   'istream-chain.c:226,7'
          Branch Sides:
            - BranchSide:      'istream-chain.c:227,8'
              BranchSideFuncs:
                - i_stream_chain_read_next
                - i_stream_chain_read
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
            - BranchSide:      'istream-chain.c:242,28'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:227,8'
          Branch Sides:
            - BranchSide:      'istream-chain.c:228,26'
              BranchSideFuncs:
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
            - BranchSide:      'istream-chain.c:237,29'
              BranchSideFuncs:
                - i_stream_chain_read_next
                - i_stream_chain_read
        - Branch String:   'istream-chain.c:245,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:247,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:250,6'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:247,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:247,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:247,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-chain.c:247,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:247,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:248,10'
              BranchSideFuncs: []
        - Branch String:   'istream-chain.c:250,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:252,20'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:259,3'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
                - i_panic
        - Branch String:   'istream-chain.c:259,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:259,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:260,21'
              BranchSideFuncs:
                - i_stream_alloc
                - i_memcpy.6538
                - i_panic
        - Branch String:   'istream-chain.c:267,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:267,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-chain.c:268,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-chain.c:209,7'
          Dst:             i_stream_chain_skip
        - Src:             'istream-chain.c:211,2'
          Dst:             i_panic
        - Src:             'istream-chain.c:213,2'
          Dst:             i_panic
        - Src:             'istream-chain.c:216,9'
          Dst:             i_stream_get_data
        - Src:             'istream-chain.c:221,3'
          Dst:             i_panic
        - Src:             'istream-chain.c:222,9'
          Dst:             i_stream_read_memarea
        - Src:             'istream-chain.c:230,6'
          Dst:             i_stream_get_name
        - Src:             'istream-chain.c:231,6'
          Dst:             i_stream_get_error
        - Src:             'istream-chain.c:228,5'
          Dst:             io_stream_set_error
        - Src:             'istream-chain.c:237,4'
          Dst:             i_stream_chain_read_next
        - Src:             'istream-chain.c:239,11'
          Dst:             i_stream_chain_read
        - Src:             'istream-chain.c:242,10'
          Dst:             i_stream_get_data
        - Src:             'istream-chain.c:247,3'
          Dst:             i_panic
        - Src:             'istream-chain.c:259,3'
          Dst:             i_panic
        - Src:             'istream-chain.c:261,3'
          Dst:             i_stream_alloc
        - Src:             'istream-chain.c:261,3'
          Dst:             i_memcpy
        - Src:             'istream-chain.c:267,2'
          Dst:             i_panic
    - functionName:    i_stream_chain_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - max_size
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_set_max_buffer_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-chain.c:82,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:83,7'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
            - BranchSide:      'istream-chain.c:87,1'
              BranchSideFuncs: []
        - Branch String:   'istream-chain.c:83,7'
          Branch Sides:
            - BranchSide:      'istream-chain.c:84,33'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
            - BranchSide:      'istream-chain.c:85,10'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
      Callsites:
        - Src:             'istream-chain.c:84,4'
          Dst:             i_stream_set_max_buffer_size
    - functionName:    i_stream_chain_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_free_buffer
        - i_stream_unref
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-chain.c:95,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:96,37'
              BranchSideFuncs:
                - i_stream_unref
                - p_free_internal.6546
                - i_stream_free_buffer
            - BranchSide:      'istream-chain.c:102,24'
              BranchSideFuncs:
                - i_stream_free_buffer
      Callsites:
        - Src:             'istream-chain.c:98,3'
          Dst:             i_stream_unref
        - Src:             'istream-chain.c:99,3'
          Dst:             p_free_internal
        - Src:             'istream-chain.c:102,2'
          Dst:             i_stream_free_buffer
    - functionName:    i_stream_chain_close
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_chain_skip
        - i_stream_close
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-chain.c:284,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:284,6'
              BranchSideFuncs:
                - i_stream_close
            - BranchSide:      'istream-chain.c:285,37'
              BranchSideFuncs:
                - i_stream_close
        - Branch String:   'istream-chain.c:286,3'
          Branch Sides:
            - BranchSide:      'istream-chain.c:287,19'
              BranchSideFuncs:
                - i_stream_close
            - BranchSide:      'istream-chain.c:290,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-chain.c:282,8'
          Dst:             i_stream_chain_skip
        - Src:             'istream-chain.c:287,4'
          Dst:             i_stream_close
    - functionName:    i_stream_create_chain
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     externalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - chain_r
        - max_buffer_size
      BBCount:         3
      ICount:          88
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-chain.c:331,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-chain.c:331,12'
          Dst:             p_malloc
        - Src:             'istream-chain.c:348,9'
          Dst:             i_stream_create
    - functionName:    i_stream_chain_append_eof
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     externalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - chain
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_chain_append_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-chain.c:70,2'
          Dst:             i_stream_chain_append_internal
    - functionName:    i_stream_chain_append_internal
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - chain
        - stream
      BBCount:         26
      ICount:          157
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - i_stream_ref
        - i_stream_set_input_pending
        - i_stream_set_max_buffer_size
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-chain.c:42,21'
          Branch Sides:
            - BranchSide:      'istream-chain.c:42,24'
              BranchSideFuncs:
                - malloc_multiply_check.6552
                - p_malloc.6553
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
                - i_stream_ref
            - BranchSide:      'istream-chain.c:45,9'
              BranchSideFuncs:
                - malloc_multiply_check.6552
                - p_malloc.6553
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
                - i_stream_ref
        - Branch String:   'istream-chain.c:42,44'
          Branch Sides:
            - BranchSide:      'istream-chain.c:42,47'
              BranchSideFuncs:
                - malloc_multiply_check.6552
                - p_malloc.6553
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
                - i_stream_ref
            - BranchSide:      'istream-chain.c:45,9'
              BranchSideFuncs:
                - malloc_multiply_check.6552
                - p_malloc.6553
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
                - i_stream_ref
        - Branch String:   'istream-chain.c:42,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:43,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-chain.c:45,9'
              BranchSideFuncs:
                - malloc_multiply_check.6552
                - p_malloc.6553
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
                - i_stream_ref
        - Branch String:   'istream-chain.c:49,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:50,16'
              BranchSideFuncs:
                - i_stream_ref
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
            - BranchSide:      'istream-chain.c:52,6'
              BranchSideFuncs:
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
        - Branch String:   'istream-chain.c:52,26'
          Branch Sides:
            - BranchSide:      'istream-chain.c:52,29'
              BranchSideFuncs:
                - i_stream_set_input_pending
                - i_stream_set_max_buffer_size
            - BranchSide:      'istream-chain.c:56,2'
              BranchSideFuncs:
                - i_stream_set_input_pending
        - Branch String:   'istream-chain.c:52,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:53,32'
              BranchSideFuncs:
                - i_stream_set_max_buffer_size
                - i_stream_set_input_pending
            - BranchSide:      'istream-chain.c:56,2'
              BranchSideFuncs:
                - i_stream_set_input_pending
        - Branch String:   'istream-chain.c:56,2'
          Branch Sides:
            - BranchSide:      'istream-chain.c:56,2'
              BranchSideFuncs:
                - i_stream_set_input_pending
            - BranchSide:      'istream-chain.c:56,2'
              BranchSideFuncs:
                - i_stream_set_input_pending
        - Branch String:   'istream-chain.c:59,6'
          Branch Sides:
            - BranchSide:      'istream-chain.c:59,6'
              BranchSideFuncs:
                - i_stream_set_input_pending
            - BranchSide:      'istream-chain.c:60,30'
              BranchSideFuncs:
                - i_stream_set_input_pending
      Callsites:
        - Src:             'istream-chain.c:45,9'
          Dst:             malloc_multiply_check
        - Src:             'istream-chain.c:45,9'
          Dst:             p_malloc
        - Src:             'istream-chain.c:50,3'
          Dst:             i_stream_ref
        - Src:             'istream-chain.c:53,3'
          Dst:             i_stream_set_max_buffer_size
        - Src:             'istream-chain.c:60,3'
          Dst:             i_stream_set_input_pending
    - functionName:    i_stream_chain_append
      functionSourceFile: '/src/dovecot/src/lib/istream-chain.c'
      linkageType:     externalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - chain
        - stream
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_chain_append_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-chain.c:65,2'
          Dst:             i_stream_chain_append_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_copied_data_free
      functionSourceFile: '/src/dovecot/src/lib/istream-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
      BBCount:         5
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-data.c:42,2'
          Dst:             p_free_internal
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    i_stream_create_copy_from_data
      functionSourceFile: '/src/dovecot/src/lib/istream-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_malloc
        - i_memcpy
        - i_stream_add_destroy_callback
        - i_stream_copied_data_free
        - i_stream_create_from_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream-data.c:50,6'
          Branch Sides:
            - BranchSide:      'istream-data.c:51,10'
              BranchSideFuncs:
                - i_stream_create_from_data
                - i_stream_add_destroy_callback
            - BranchSide:      'istream-data.c:53,21'
              BranchSideFuncs:
                - i_malloc
                - i_memcpy.6592
                - i_stream_create_from_data
                - i_stream_add_destroy_callback
        - Branch String:   'istream-data.c:57,6'
          Branch Sides:
            - BranchSide:      'istream-data.c:57,6'
              BranchSideFuncs:
                - i_stream_add_destroy_callback
            - BranchSide:      'istream-data.c:58,3'
              BranchSideFuncs:
                - i_stream_add_destroy_callback
      Callsites:
        - Src:             'istream-data.c:53,12'
          Dst:             i_malloc
        - Src:             'istream-data.c:54,3'
          Dst:             i_memcpy
        - Src:             'istream-data.c:56,11'
          Dst:             i_stream_create_from_data
        - Src:             'istream-data.c:58,3'
          Dst:             i_stream_add_destroy_callback
        - Src:             'istream-data.c:58,3'
          Dst:             i_stream_copied_data_free
    - functionName:    i_stream_create_from_data
      functionSourceFile: '/src/dovecot/src/lib/istream-data.c'
      linkageType:     externalLinkage
      functionLinenumber: 20
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          74
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create
        - i_stream_set_name
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-data.c:23,11'
          Dst:             malloc_multiply_check
        - Src:             'istream-data.c:23,11'
          Dst:             p_malloc
        - Src:             'istream-data.c:34,2'
          Dst:             i_stream_create
        - Src:             'istream-data.c:36,2'
          Dst:             i_stream_set_name
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_data_read
      functionSourceFile: '/src/dovecot/src/lib/istream-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7
      functionLinenumberEnd: 9
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_data_seek
      functionSourceFile: '/src/dovecot/src/lib/istream-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - stream
        - v_offset
        - mark
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_create_failure_at_eof
      functionSourceFile: '/src/dovecot/src/lib/istream-failure-at.c'
      linkageType:     externalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - stream_errno
        - error_string
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_failure_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-failure-at.c:94,9'
          Dst:             i_stream_create_failure_at
    - functionName:    i_stream_create_failure_at
      functionSourceFile: '/src/dovecot/src/lib/istream-failure-at.c'
      linkageType:     externalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - failure_offset
        - stream_errno
        - error_string
      BBCount:         3
      ICount:          108
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup
        - i_stream_create
        - i_stream_get_fd
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-failure-at.c:73,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-failure-at.c:73,12'
          Dst:             p_malloc
        - Src:             'istream-failure-at.c:84,26'
          Dst:             i_strdup
        - Src:             'istream-failure-at.c:87,11'
          Dst:             i_stream_get_fd
        - Src:             'istream-failure-at.c:86,9'
          Dst:             i_stream_create
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_failure_at_read
      functionSourceFile: '/src/dovecot/src/lib/istream-failure-at.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         26
      ICount:          226
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - i_panic
        - i_stream_read_copy_from_parent
        - i_stream_seek
        - io_stream_set_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-failure-at.c:36,15'
          Branch Sides:
            - BranchSide:      'istream-failure-at.c:36,18'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_panic
                - __errno_location
                - io_stream_set_error
            - BranchSide:      'istream-failure-at.c:56,13'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
        - Branch String:   'istream-failure-at.c:36,6'
          Branch Sides:
            - BranchSide:      'istream-failure-at.c:37,7'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - io_stream_set_error
            - BranchSide:      'istream-failure-at.c:56,13'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
        - Branch String:   'istream-failure-at.c:37,7'
          Branch Sides:
            - BranchSide:      'istream-failure-at.c:40,18'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
            - BranchSide:      'istream-failure-at.c:49,21'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-failure-at.c:51,4'
          Branch Sides:
            - BranchSide:      'istream-failure-at.c:51,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-failure-at.c:51,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-failure-at.c:51,4'
          Branch Sides:
            - BranchSide:      'istream-failure-at.c:51,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-failure-at.c:53,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-failure-at.c:31,2'
          Dst:             i_stream_seek
        - Src:             'istream-failure-at.c:34,8'
          Dst:             i_stream_read_copy_from_parent
        - Src:             'istream-failure-at.c:41,35'
          Dst:             __errno_location
        - Src:             'istream-failure-at.c:43,4'
          Dst:             io_stream_set_error
        - Src:             'istream-failure-at.c:51,4'
          Dst:             i_panic
        - Src:             'istream-failure-at.c:59,34'
          Dst:             __errno_location
        - Src:             'istream-failure-at.c:61,3'
          Dst:             io_stream_set_error
    - functionName:    i_stream_failure_at_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream-failure-at.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         5
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-failure-at.c:20,2'
          Dst:             p_free_internal
    - functionName:    i_stream_create_file
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - path
        - max_buffer_size
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_file_common
        - i_stream_set_name
        - malloc_multiply_check
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-file.c:291,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-file.c:291,12'
          Dst:             p_malloc
        - Src:             'istream-file.c:292,10'
          Dst:             i_stream_create_file_common
        - Src:             'istream-file.c:294,2'
          Dst:             i_stream_set_name
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_create_file_common
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - fstream
        - fd
        - path
        - max_buffer_size
        - autoclose_fd
      BBCount:         31
      ICount:          253
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - fcntl
        - fstat
        - i_panic
        - i_stream_create
        - i_stream_set_name
        - io_stream_set_error
        - t_strdup_printf
      functionUses:    5
      BranchProfiles:
        - Branch String:   'istream-file.c:210,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:212,11'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-file.c:213,19'
              BranchSideFuncs:
                - fstat
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
                - t_strdup_printf
                - io_stream_set_error
        - Branch String:   'istream-file.c:213,13'
          Branch Sides:
            - BranchSide:      'istream-file.c:214,11'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-file.c:215,11'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
                - t_strdup_printf
                - io_stream_set_error
        - Branch String:   'istream-file.c:215,11'
          Branch Sides:
            - BranchSide:      'istream-file.c:216,11'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-file.c:217,12'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
                - t_strdup_printf
                - io_stream_set_error
        - Branch String:   'istream-file.c:217,11'
          Branch Sides:
            - BranchSide:      'istream-file.c:218,11'
              BranchSideFuncs:
                - t_strdup_printf
                - io_stream_set_error
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-file.c:222,24'
              BranchSideFuncs:
                - t_strdup_printf
                - io_stream_set_error
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-file.c:224,4'
          Branch Sides:
            - BranchSide:      'istream-file.c:224,19'
              BranchSideFuncs:
                - io_stream_set_error
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-file.c:224,53'
              BranchSideFuncs:
                - t_strdup_printf
                - io_stream_set_error
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-file.c:228,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:229,3'
              BranchSideFuncs:
                - i_stream_create
                - i_stream_set_name
            - BranchSide:      'istream-file.c:232,28'
              BranchSideFuncs:
                - fcntl
                - i_stream_create
                - i_stream_set_name
                - __errno_location
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-file.c:232,13'
          Branch Sides:
            - BranchSide:      'istream-file.c:233,3'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_create
                - i_stream_set_name
                - i_panic
            - BranchSide:      'istream-file.c:238,14'
              BranchSideFuncs:
                - i_stream_create
                - i_stream_set_name
        - Branch String:   'istream-file.c:233,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:233,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:235,43'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_create
                - i_stream_set_name
      Callsites:
        - Src:             'istream-file.c:213,13'
          Dst:             fstat
        - Src:             'istream-file.c:224,26'
          Dst:             t_strdup_printf
        - Src:             'istream-file.c:222,3'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:232,22'
          Dst:             fcntl
        - Src:             'istream-file.c:233,3'
          Dst:             i_panic
        - Src:             'istream-file.c:235,43'
          Dst:             __errno_location
        - Src:             'istream-file.c:236,3'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:244,10'
          Dst:             i_stream_create
        - Src:             'istream-file.c:245,2'
          Dst:             i_stream_set_name
    - functionName:    i_stream_file_close
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         19
      ICount:          121
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - close
        - i_error
        - i_stream_get_name
        - iostream_fd_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-file.c:23,43'
          Branch Sides:
            - BranchSide:      'istream-file.c:23,7'
              BranchSideFuncs:
                - iostream_fd_unref
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'istream-file.c:24,22'
              BranchSideFuncs:
                - iostream_fd_unref
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
        - Branch String:   'istream-file.c:25,28'
          Branch Sides:
            - BranchSide:      'istream-file.c:25,31'
              BranchSideFuncs:
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'istream-file.c:25,28'
              BranchSideFuncs: []
        - Branch String:   'istream-file.c:25,49'
          Branch Sides:
            - BranchSide:      'istream-file.c:25,53'
              BranchSideFuncs:
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'istream-file.c:25,49'
              BranchSideFuncs: []
        - Branch String:   'istream-file.c:25,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:25,6'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:29,7'
              BranchSideFuncs:
                - close
                - i_stream_get_name
                - i_error
                - __errno_location
        - Branch String:   'istream-file.c:29,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:29,7'
              BranchSideFuncs:
                - __errno_location
                - i_stream_get_name
                - i_error
            - BranchSide:      'istream-file.c:29,7'
              BranchSideFuncs:
                - i_stream_get_name
                - i_error
        - Branch String:   'istream-file.c:29,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:31,24'
              BranchSideFuncs:
                - i_stream_get_name
                - i_error
            - BranchSide:      'istream-file.c:33,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:24,3'
          Dst:             iostream_fd_unref
        - Src:             'istream-file.c:29,7'
          Dst:             close
        - Src:             'istream-file.c:29,7'
          Dst:             __errno_location
        - Src:             'istream-file.c:31,5'
          Dst:             i_stream_get_name
        - Src:             'istream-file.c:30,4'
          Dst:             i_error
    - functionName:    i_stream_file_read
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         73
      ICount:          458
      EdgeCount:       88
      CyclomaticComplexity: 17
      functionsReached:
        - __errno_location
        - i_panic
        - i_stream_file_open
        - i_stream_try_alloc
        - io_stream_set_error
        - pread
        - read
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-file.c:59,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:60,3'
              BranchSideFuncs:
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
                - pread
                - i_stream_file_open
                - i_panic
            - BranchSide:      'istream-file.c:62,6'
              BranchSideFuncs:
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
                - pread
                - i_stream_file_open
                - i_panic
        - Branch String:   'istream-file.c:62,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:63,26'
              BranchSideFuncs:
                - i_stream_file_open
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
                - pread
                - i_panic
            - BranchSide:      'istream-file.c:68,11'
              BranchSideFuncs:
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
                - pread
        - Branch String:   'istream-file.c:63,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:64,4'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:65,3'
              BranchSideFuncs:
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
                - pread
                - i_panic
        - Branch String:   'istream-file.c:65,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:65,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:66,2'
              BranchSideFuncs:
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
                - pread
        - Branch String:   'istream-file.c:70,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:71,15'
              BranchSideFuncs:
                - pread
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:73,13'
              BranchSideFuncs:
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:73,13'
          Branch Sides:
            - BranchSide:      'istream-file.c:76,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:78,14'
              BranchSideFuncs:
                - read
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:82,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:84,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:89,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:89,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:90,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:112,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:90,23'
          Branch Sides:
            - BranchSide:      'istream-file.c:90,26'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:91,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:90,43'
          Branch Sides:
            - BranchSide:      'istream-file.c:91,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:94,4'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:90,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:92,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:94,4'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:94,4'
          Branch Sides:
            - BranchSide:      'istream-file.c:94,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:97,4'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-file.c:97,4'
          Branch Sides:
            - BranchSide:      'istream-file.c:97,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:98,8'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
                - io_stream_set_error
        - Branch String:   'istream-file.c:98,8'
          Branch Sides:
            - BranchSide:      'istream-file.c:99,26'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'istream-file.c:103,26'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
        - Branch String:   'istream-file.c:112,14'
          Branch Sides:
            - BranchSide:      'istream-file.c:112,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:127,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:112,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:113,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:127,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:113,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:113,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:114,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:114,3'
          Branch Sides:
            - BranchSide:      'istream-file.c:114,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:116,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:116,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:117,26'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:120,11'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:128,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:128,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'istream-file.c:128,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'istream-file.c:128,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:128,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:129,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-file.c:129,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:129,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:130,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:59,7'
          Dst:             i_stream_try_alloc
        - Src:             'istream-file.c:63,7'
          Dst:             i_stream_file_open
        - Src:             'istream-file.c:65,3'
          Dst:             i_panic
        - Src:             'istream-file.c:71,9'
          Dst:             pread
        - Src:             'istream-file.c:78,9'
          Dst:             read
        - Src:             'istream-file.c:90,8'
          Dst:             __errno_location
        - Src:             'istream-file.c:90,26'
          Dst:             __errno_location
        - Src:             'istream-file.c:94,4'
          Dst:             __errno_location
        - Src:             'istream-file.c:94,4'
          Dst:             i_panic
        - Src:             'istream-file.c:97,4'
          Dst:             __errno_location
        - Src:             'istream-file.c:97,4'
          Dst:             i_panic
        - Src:             'istream-file.c:99,5'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:103,5'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:107,35'
          Dst:             __errno_location
        - Src:             'istream-file.c:113,3'
          Dst:             i_panic
        - Src:             'istream-file.c:114,3'
          Dst:             i_panic
        - Src:             'istream-file.c:128,2'
          Dst:             i_panic
        - Src:             'istream-file.c:129,2'
          Dst:             i_panic
    - functionName:    i_stream_file_seek
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - stream
        - v_offset
        - mark
      BBCount:         8
      ICount:          84
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-file.c:139,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:139,6'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:140,7'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-file.c:140,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:141,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:142,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:141,4'
          Dst:             i_panic
    - functionName:    i_stream_file_sync
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         4
      ICount:          36
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-file.c:152,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:154,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-file.c:157,17'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_stream_file_stat
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - exact
      BBCount:         14
      ICount:          113
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - fstat
        - i_error
        - i_stream_get_error
        - i_stream_get_name
        - io_stream_set_error
        - stat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-file.c:168,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:170,13'
              BranchSideFuncs:
                - stat
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
                - fstat
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
            - BranchSide:      'istream-file.c:170,2'
              BranchSideFuncs: []
        - Branch String:   'istream-file.c:170,13'
          Branch Sides:
            - BranchSide:      'istream-file.c:171,13'
              BranchSideFuncs:
                - fstat
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
            - BranchSide:      'istream-file.c:179,12'
              BranchSideFuncs:
                - stat
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
        - Branch String:   'istream-file.c:171,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:172,35'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
            - BranchSide:      'istream-file.c:178,2'
              BranchSideFuncs: []
        - Branch String:   'istream-file.c:179,7'
          Branch Sides:
            - BranchSide:      'istream-file.c:0,0'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
            - BranchSide:      'istream-file.c:180,35'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - i_stream_get_error
                - i_error
      Callsites:
        - Src:             'istream-file.c:166,21'
          Dst:             i_stream_get_name
        - Src:             'istream-file.c:171,7'
          Dst:             fstat
        - Src:             'istream-file.c:172,35'
          Dst:             __errno_location
        - Src:             'istream-file.c:173,4'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:175,18'
          Dst:             i_stream_get_error
        - Src:             'istream-file.c:175,4'
          Dst:             i_error
        - Src:             'istream-file.c:179,7'
          Dst:             stat
        - Src:             'istream-file.c:180,35'
          Dst:             __errno_location
        - Src:             'istream-file.c:181,4'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:183,18'
          Dst:             i_stream_get_error
        - Src:             'istream-file.c:183,4'
          Dst:             i_error
    - functionName:    i_stream_file_open
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - i_stream_get_name
        - io_stream_set_error
        - open
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-file.c:42,6'
          Branch Sides:
            - BranchSide:      'istream-file.c:43,24'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'istream-file.c:48,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-file.c:39,21'
          Dst:             i_stream_get_name
        - Src:             'istream-file.c:41,15'
          Dst:             open
        - Src:             'istream-file.c:43,3'
          Dst:             io_stream_set_error
        - Src:             'istream-file.c:45,34'
          Dst:             __errno_location
    - functionName:    pread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_create_fd_ref_autoclose
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ref
        - max_buffer_size
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_file_common
        - iostream_fd_ref
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-file.c:279,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-file.c:279,12'
          Dst:             p_malloc
        - Src:             'istream-file.c:281,2'
          Dst:             iostream_fd_ref
        - Src:             'istream-file.c:282,9'
          Dst:             i_stream_create_file_common
    - functionName:    i_stream_create_fd_autoclose
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - max_buffer_size
      BBCount:         7
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_create_file_common
        - malloc_multiply_check
        - p_malloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'istream-file.c:265,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:265,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:265,2'
              BranchSideFuncs:
                - malloc_multiply_check.6666
                - p_malloc.6667
                - i_stream_create_file_common
      Callsites:
        - Src:             'istream-file.c:265,2'
          Dst:             i_panic
        - Src:             'istream-file.c:267,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-file.c:267,12'
          Dst:             p_malloc
        - Src:             'istream-file.c:268,10'
          Dst:             i_stream_create_file_common
    - functionName:    i_stream_create_fd
      functionSourceFile: '/src/dovecot/src/lib/istream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - max_buffer_size
      BBCount:         7
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_create_file_common
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-file.c:253,2'
          Branch Sides:
            - BranchSide:      'istream-file.c:253,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-file.c:253,2'
              BranchSideFuncs:
                - malloc_multiply_check.6666
                - p_malloc.6667
                - i_stream_create_file_common
      Callsites:
        - Src:             'istream-file.c:253,2'
          Dst:             i_panic
        - Src:             'istream-file.c:255,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-file.c:255,12'
          Dst:             p_malloc
        - Src:             'istream-file.c:256,9'
          Dst:             i_stream_create_file_common
    - functionName:    i_stream_create_range
      functionSourceFile: '/src/dovecot/src/lib/istream-limit.c'
      linkageType:     externalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - input
        - v_offset
        - v_size
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-limit.c:141,8'
          Dst:             i_stream_create_limit
    - functionName:    i_stream_create_limit
      functionSourceFile: '/src/dovecot/src/lib/istream-limit.c'
      linkageType:     externalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - v_size
      BBCount:         3
      ICount:          111
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create
        - i_stream_get_fd
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-limit.c:118,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-limit.c:118,12'
          Dst:             p_malloc
        - Src:             'istream-limit.c:131,11'
          Dst:             i_stream_get_fd
        - Src:             'istream-limit.c:130,9'
          Dst:             i_stream_create
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_limit_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream-limit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_seek
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-limit.c:20,46'
          Branch Sides:
            - BranchSide:      'istream-limit.c:21,12'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream-limit.c:23,30'
              BranchSideFuncs:
                - i_stream_seek
        - Branch String:   'istream-limit.c:20,12'
          Branch Sides:
            - BranchSide:      'istream-limit.c:20,12'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream-limit.c:23,30'
              BranchSideFuncs:
                - i_stream_seek
      Callsites:
        - Src:             'istream-limit.c:23,16'
          Dst:             i_stream_seek
    - functionName:    i_stream_limit_read
      functionSourceFile: '/src/dovecot/src/lib/istream-limit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         36
      ICount:          304
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - i_panic
        - i_stream_get_data
        - i_stream_read_memarea
        - i_stream_seek
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-limit.c:38,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:40,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-limit.c:44,17'
              BranchSideFuncs:
                - i_stream_get_data
                - i_stream_read_memarea
                - i_stream_get_data
                - i_panic
        - Branch String:   'istream-limit.c:48,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:49,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-limit.c:50,7'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_panic
        - Branch String:   'istream-limit.c:55,30'
          Branch Sides:
            - BranchSide:      'istream-limit.c:55,33'
              BranchSideFuncs:
                - i_panic
                - i_stream_read_memarea
                - i_stream_get_data
            - BranchSide:      'istream-limit.c:55,2'
              BranchSideFuncs:
                - i_panic
                - i_stream_read_memarea
                - i_stream_get_data
        - Branch String:   'istream-limit.c:55,2'
          Branch Sides:
            - BranchSide:      'istream-limit.c:0,0'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_panic
            - BranchSide:      'istream-limit.c:51,31'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - i_panic
        - Branch String:   'istream-limit.c:56,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:57,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-limit.c:59,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-limit.c:59,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:60,10'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-limit.c:67,8'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-limit.c:61,7'
          Branch Sides:
            - BranchSide:      'istream-limit.c:62,10'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-limit.c:65,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-limit.c:67,8'
          Branch Sides:
            - BranchSide:      'istream-limit.c:67,38'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-limit.c:68,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-limit.c:70,2'
          Branch Sides:
            - BranchSide:      'istream-limit.c:70,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-limit.c:70,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-limit.c:70,2'
          Branch Sides:
            - BranchSide:      'istream-limit.c:70,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-limit.c:70,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-limit.c:70,2'
          Branch Sides:
            - BranchSide:      'istream-limit.c:70,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-limit.c:72,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-limit.c:35,2'
          Dst:             i_stream_seek
        - Src:             'istream-limit.c:47,19'
          Dst:             i_stream_get_data
        - Src:             'istream-limit.c:51,9'
          Dst:             i_stream_read_memarea
        - Src:             'istream-limit.c:54,20'
          Dst:             i_stream_get_data
        - Src:             'istream-limit.c:70,2'
          Dst:             i_panic
    - functionName:    i_stream_limit_stat
      functionSourceFile: '/src/dovecot/src/lib/istream-limit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - exact
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_stat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-limit.c:82,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:83,34'
              BranchSideFuncs: []
            - BranchSide:      'istream-limit.c:87,2'
              BranchSideFuncs: []
        - Branch String:   'istream-limit.c:88,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:89,29'
              BranchSideFuncs: []
            - BranchSide:      'istream-limit.c:90,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-limit.c:82,6'
          Dst:             i_stream_stat
    - functionName:    i_stream_limit_get_size
      functionSourceFile: '/src/dovecot/src/lib/istream-limit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - exact
        - size_r
      BBCount:         10
      ICount:          81
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - i_stream_stat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-limit.c:100,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:101,13'
              BranchSideFuncs: []
            - BranchSide:      'istream-limit.c:105,21'
              BranchSideFuncs:
                - i_stream_stat
        - Branch String:   'istream-limit.c:105,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:106,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-limit.c:107,6'
              BranchSideFuncs: []
        - Branch String:   'istream-limit.c:107,6'
          Branch Sides:
            - BranchSide:      'istream-limit.c:108,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-limit.c:110,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-limit.c:105,6'
          Dst:             i_stream_stat
    - functionName:    i_stream_rawlog_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_seek
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-rawlog.c:33,46'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:34,12'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream-rawlog.c:36,30'
              BranchSideFuncs:
                - i_stream_seek
        - Branch String:   'istream-rawlog.c:33,12'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:33,12'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream-rawlog.c:36,30'
              BranchSideFuncs:
                - i_stream_seek
      Callsites:
        - Src:             'istream-rawlog.c:36,16'
          Dst:             i_stream_seek
    - functionName:    i_stream_rawlog_close
      functionSourceFile: '/src/dovecot/src/lib/istream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_close
        - iostream_rawlog_close
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-rawlog.c:21,6'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:21,6'
              BranchSideFuncs:
                - i_stream_close
            - BranchSide:      'istream-rawlog.c:22,18'
              BranchSideFuncs:
                - i_stream_close
      Callsites:
        - Src:             'istream-rawlog.c:20,2'
          Dst:             iostream_rawlog_close
        - Src:             'istream-rawlog.c:22,3'
          Dst:             i_stream_close
    - functionName:    i_stream_rawlog_read
      functionSourceFile: '/src/dovecot/src/lib/istream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         31
      ICount:          256
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - i_stream_get_data
        - i_stream_read_memarea
        - i_stream_seek
        - iostream_rawlog_flush
        - iostream_rawlog_write
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-rawlog.c:54,6'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:55,7'
              BranchSideFuncs:
                - iostream_rawlog_write
                - i_panic
                - iostream_rawlog_flush
            - BranchSide:      'istream-rawlog.c:56,7'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - iostream_rawlog_write
                - i_panic
                - iostream_rawlog_flush
        - Branch String:   'istream-rawlog.c:61,30'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:61,33'
              BranchSideFuncs:
                - iostream_rawlog_write
                - i_panic
                - iostream_rawlog_flush
                - i_stream_read_memarea
                - i_stream_get_data
            - BranchSide:      'istream-rawlog.c:61,2'
              BranchSideFuncs:
                - iostream_rawlog_write
                - i_panic
                - iostream_rawlog_flush
                - i_stream_read_memarea
                - i_stream_get_data
        - Branch String:   'istream-rawlog.c:61,2'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:0,0'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - iostream_rawlog_write
                - i_panic
                - iostream_rawlog_flush
            - BranchSide:      'istream-rawlog.c:57,31'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
                - iostream_rawlog_write
                - i_panic
                - iostream_rawlog_flush
        - Branch String:   'istream-rawlog.c:62,6'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:63,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-rawlog.c:64,6'
              BranchSideFuncs:
                - iostream_rawlog_write
                - i_panic
                - iostream_rawlog_flush
        - Branch String:   'istream-rawlog.c:64,6'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:65,26'
              BranchSideFuncs:
                - iostream_rawlog_flush
                - iostream_rawlog_write
                - i_panic
            - BranchSide:      'istream-rawlog.c:67,6'
              BranchSideFuncs:
                - iostream_rawlog_write
                - i_panic
        - Branch String:   'istream-rawlog.c:67,6'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:68,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-rawlog.c:70,19'
              BranchSideFuncs:
                - iostream_rawlog_write
                - i_panic
        - Branch String:   'istream-rawlog.c:75,2'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-rawlog.c:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-rawlog.c:75,2'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-rawlog.c:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-rawlog.c:75,2'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-rawlog.c:77,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-rawlog.c:47,2'
          Dst:             i_stream_seek
        - Src:             'istream-rawlog.c:53,19'
          Dst:             i_stream_get_data
        - Src:             'istream-rawlog.c:57,9'
          Dst:             i_stream_read_memarea
        - Src:             'istream-rawlog.c:60,20'
          Dst:             i_stream_get_data
        - Src:             'istream-rawlog.c:65,3'
          Dst:             iostream_rawlog_flush
        - Src:             'istream-rawlog.c:71,3'
          Dst:             iostream_rawlog_write
        - Src:             'istream-rawlog.c:75,2'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_create_rawlog_from_stream
      functionSourceFile: '/src/dovecot/src/lib/istream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - input
        - rawlog_output
        - flags
      BBCount:         3
      ICount:          123
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create
        - i_stream_get_fd
        - iostream_rawlog_init
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-rawlog.c:105,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-rawlog.c:105,12'
          Dst:             p_malloc
        - Src:             'istream-rawlog.c:110,2'
          Dst:             iostream_rawlog_init
        - Src:             'istream-rawlog.c:120,11'
          Dst:             i_stream_get_fd
        - Src:             'istream-rawlog.c:119,9'
          Dst:             i_stream_create
    - functionName:    i_stream_create_rawlog
      functionSourceFile: '/src/dovecot/src/lib/istream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - input
        - rawlog_path
        - rawlog_fd
        - flags
      BBCount:         14
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_stream_create_rawlog_from_stream
        - o_stream_create_fd
        - o_stream_create_fd_autoclose
        - o_stream_set_name
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-rawlog.c:87,2'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:87,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-rawlog.c:88,2'
              BranchSideFuncs:
                - o_stream_create_fd
                - t_strdup_printf
                - o_stream_set_name
                - i_stream_create_rawlog_from_stream
                - o_stream_create_fd_autoclose
                - i_panic
        - Branch String:   'istream-rawlog.c:88,2'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:88,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-rawlog.c:90,18'
              BranchSideFuncs:
                - o_stream_create_fd
                - t_strdup_printf
                - o_stream_set_name
                - i_stream_create_rawlog_from_stream
                - o_stream_create_fd_autoclose
        - Branch String:   'istream-rawlog.c:90,18'
          Branch Sides:
            - BranchSide:      'istream-rawlog.c:91,3'
              BranchSideFuncs:
                - o_stream_create_fd_autoclose
                - t_strdup_printf
                - o_stream_set_name
                - i_stream_create_rawlog_from_stream
            - BranchSide:      'istream-rawlog.c:92,22'
              BranchSideFuncs:
                - o_stream_create_fd
                - t_strdup_printf
                - o_stream_set_name
                - i_stream_create_rawlog_from_stream
      Callsites:
        - Src:             'istream-rawlog.c:87,2'
          Dst:             i_panic
        - Src:             'istream-rawlog.c:88,2'
          Dst:             i_panic
        - Src:             'istream-rawlog.c:91,3'
          Dst:             o_stream_create_fd_autoclose
        - Src:             'istream-rawlog.c:92,3'
          Dst:             o_stream_create_fd
        - Src:             'istream-rawlog.c:94,6'
          Dst:             t_strdup_printf
        - Src:             'istream-rawlog.c:93,2'
          Dst:             o_stream_set_name
        - Src:             'istream-rawlog.c:95,9'
          Dst:             i_stream_create_rawlog_from_stream
    - functionName:    i_stream_sized_parent_read
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - pos_r
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_get_data
        - i_stream_read_memarea
      functionUses:    2
      BranchProfiles:
        - Branch String:   'istream-sized.c:58,33'
          Branch Sides:
            - BranchSide:      'istream-sized.c:58,36'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
            - BranchSide:      'istream-sized.c:58,2'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
        - Branch String:   'istream-sized.c:58,2'
          Branch Sides:
            - BranchSide:      'istream-sized.c:54,31'
              BranchSideFuncs:
                - i_stream_read_memarea
                - i_stream_get_data
            - BranchSide:      'istream-sized.c:59,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-sized.c:54,9'
          Dst:             i_stream_read_memarea
        - Src:             'istream-sized.c:57,20'
          Dst:             i_stream_get_data
    - functionName:    i_stream_sized_stat
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - exact
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_stream_stat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-sized.c:144,6'
          Branch Sides:
            - BranchSide:      'istream-sized.c:145,34'
              BranchSideFuncs: []
            - BranchSide:      'istream-sized.c:149,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-sized.c:144,6'
          Dst:             i_stream_stat
    - functionName:    i_stream_sized_read
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         43
      ICount:          347
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - i_panic
        - i_stream_get_data
        - i_stream_seek
        - i_stream_sized_parent_read
        - io_stream_set_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-sized.c:79,6'
          Branch Sides:
            - BranchSide:      'istream-sized.c:80,7'
              BranchSideFuncs:
                - i_panic
                - io_stream_set_error
                - io_stream_set_error
                - i_stream_sized_parent_read
            - BranchSide:      'istream-sized.c:82,41'
              BranchSideFuncs:
                - i_stream_sized_parent_read
                - i_panic
                - io_stream_set_error
                - io_stream_set_error
                - i_stream_sized_parent_read
        - Branch String:   'istream-sized.c:82,7'
          Branch Sides:
            - BranchSide:      'istream-sized.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'istream-sized.c:83,4'
              BranchSideFuncs: []
        - Branch String:   'istream-sized.c:87,18'
          Branch Sides:
            - BranchSide:      'istream-sized.c:87,21'
              BranchSideFuncs:
                - i_panic
                - io_stream_set_error
                - io_stream_set_error
                - i_stream_sized_parent_read
            - BranchSide:      'istream-sized.c:93,2'
              BranchSideFuncs:
                - i_panic
                - io_stream_set_error
                - io_stream_set_error
        - Branch String:   'istream-sized.c:87,6'
          Branch Sides:
            - BranchSide:      'istream-sized.c:90,36'
              BranchSideFuncs:
                - i_stream_sized_parent_read
                - i_panic
                - io_stream_set_error
                - io_stream_set_error
            - BranchSide:      'istream-sized.c:93,2'
              BranchSideFuncs:
                - i_panic
                - io_stream_set_error
                - io_stream_set_error
        - Branch String:   'istream-sized.c:99,6'
          Branch Sides:
            - BranchSide:      'istream-sized.c:102,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:102,13'
              BranchSideFuncs:
                - i_panic
                - io_stream_set_error
                - io_stream_set_error
        - Branch String:   'istream-sized.c:102,13'
          Branch Sides:
            - BranchSide:      'istream-sized.c:104,8'
              BranchSideFuncs:
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-sized.c:115,14'
              BranchSideFuncs:
                - i_panic
                - io_stream_set_error
        - Branch String:   'istream-sized.c:104,7'
          Branch Sides:
            - BranchSide:      'istream-sized.c:105,12'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:110,9'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-sized.c:111,7'
          Branch Sides:
            - BranchSide:      'istream-sized.c:112,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:115,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-sized.c:115,13'
          Branch Sides:
            - BranchSide:      'istream-sized.c:117,13'
              BranchSideFuncs:
                - io_stream_set_error
                - i_panic
            - BranchSide:      'istream-sized.c:117,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-sized.c:117,13'
          Branch Sides:
            - BranchSide:      'istream-sized.c:119,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:121,11'
              BranchSideFuncs:
                - io_stream_set_error
                - i_panic
        - Branch String:   'istream-sized.c:126,8'
          Branch Sides:
            - BranchSide:      'istream-sized.c:126,38'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:127,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-sized.c:129,2'
          Branch Sides:
            - BranchSide:      'istream-sized.c:129,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:129,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-sized.c:129,2'
          Branch Sides:
            - BranchSide:      'istream-sized.c:129,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:129,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'istream-sized.c:129,2'
          Branch Sides:
            - BranchSide:      'istream-sized.c:129,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-sized.c:131,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'istream-sized.c:72,2'
          Dst:             i_stream_seek
        - Src:             'istream-sized.c:78,19'
          Dst:             i_stream_get_data
        - Src:             'istream-sized.c:82,14'
          Dst:             i_stream_sized_parent_read
        - Src:             'istream-sized.c:90,9'
          Dst:             i_stream_sized_parent_read
        - Src:             'istream-sized.c:106,4'
          Dst:             io_stream_set_error
        - Src:             'istream-sized.c:122,3'
          Dst:             io_stream_set_error
        - Src:             'istream-sized.c:129,2'
          Dst:             i_panic
    - functionName:    i_stream_sized_destroy
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_stream_seek
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-sized.c:25,40'
          Branch Sides:
            - BranchSide:      'istream-sized.c:26,6'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream-sized.c:28,17'
              BranchSideFuncs:
                - i_stream_seek
        - Branch String:   'istream-sized.c:25,6'
          Branch Sides:
            - BranchSide:      'istream-sized.c:25,6'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'istream-sized.c:28,17'
              BranchSideFuncs:
                - i_stream_seek
      Callsites:
        - Src:             'istream-sized.c:28,3'
          Dst:             i_stream_seek
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_create_sized_with_callback
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     externalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - error_callback
        - context
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_sized_common
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-sized.c:228,12'
          Dst:             i_stream_create_sized_common
    - functionName:    i_stream_create_sized_common
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         3
      ICount:          108
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create
        - i_stream_get_fd
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-sized.c:159,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-sized.c:159,12'
          Dst:             p_malloc
        - Src:             'istream-sized.c:171,10'
          Dst:             i_stream_get_fd
        - Src:             'istream-sized.c:170,8'
          Dst:             i_stream_create
    - functionName:    i_stream_create_min_sized_range
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     externalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - input
        - offset
        - min_size
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_sized_range
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-sized.c:213,8'
          Dst:             i_stream_create_sized_range
    - functionName:    i_stream_create_sized_range
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     externalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - input
        - offset
        - size
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_sized
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-sized.c:192,8'
          Dst:             i_stream_create_sized
    - functionName:    i_stream_create_sized
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     externalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_sized_common
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-sized.c:179,12'
          Dst:             i_stream_create_sized_common
    - functionName:    i_stream_create_sized_default_error_callback
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - context
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-sized.c:36,6'
          Branch Sides:
            - BranchSide:      'istream-sized.c:39,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'istream-sized.c:43,4'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'istream-sized.c:37,10'
          Dst:             t_strdup_printf
        - Src:             'istream-sized.c:41,10'
          Dst:             t_strdup_printf
    - functionName:    i_stream_create_min_sized
      functionSourceFile: '/src/dovecot/src/lib/istream-sized.c'
      linkageType:     externalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - min_size
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_create_sized
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-sized.c:201,7'
          Dst:             i_stream_create_sized
    - functionName:    i_stream_unix_get_read_fd
      functionSourceFile: '/src/dovecot/src/lib/istream-unix.c'
      linkageType:     externalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_unix_unset_read_fd
      functionSourceFile: '/src/dovecot/src/lib/istream-unix.c'
      linkageType:     externalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_unix_set_read_fd
      functionSourceFile: '/src/dovecot/src/lib/istream-unix.c'
      linkageType:     externalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_stream_unix_read
      functionSourceFile: '/src/dovecot/src/lib/istream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         39
      ICount:          247
      EdgeCount:       47
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - fd_read
        - i_panic
        - i_stream_file_read
        - i_stream_try_alloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-unix.c:32,6'
          Branch Sides:
            - BranchSide:      'istream-unix.c:33,29'
              BranchSideFuncs:
                - i_stream_try_alloc
                - fd_read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'istream-unix.c:35,2'
              BranchSideFuncs:
                - i_stream_try_alloc
                - fd_read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:35,2'
          Branch Sides:
            - BranchSide:      'istream-unix.c:35,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-unix.c:36,2'
              BranchSideFuncs:
                - i_stream_try_alloc
                - fd_read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:36,2'
          Branch Sides:
            - BranchSide:      'istream-unix.c:36,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-unix.c:37,26'
              BranchSideFuncs:
                - i_stream_try_alloc
                - fd_read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:37,6'
          Branch Sides:
            - BranchSide:      'istream-unix.c:38,3'
              BranchSideFuncs:
                - fd_read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'istream-unix.c:40,16'
              BranchSideFuncs:
                - fd_read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:42,6'
          Branch Sides:
            - BranchSide:      'istream-unix.c:43,3'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'istream-unix.c:45,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:45,6'
          Branch Sides:
            - BranchSide:      'istream-unix.c:47,3'
              BranchSideFuncs: []
            - BranchSide:      'istream-unix.c:52,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:52,6'
          Branch Sides:
            - BranchSide:      'istream-unix.c:53,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'istream-unix.c:65,17'
              BranchSideFuncs: []
        - Branch String:   'istream-unix.c:53,23'
          Branch Sides:
            - BranchSide:      'istream-unix.c:53,26'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'istream-unix.c:54,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:53,43'
          Branch Sides:
            - BranchSide:      'istream-unix.c:54,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'istream-unix.c:57,4'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:53,7'
          Branch Sides:
            - BranchSide:      'istream-unix.c:55,4'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'istream-unix.c:57,4'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'istream-unix.c:57,4'
          Branch Sides:
            - BranchSide:      'istream-unix.c:57,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-unix.c:60,4'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_panic
        - Branch String:   'istream-unix.c:60,4'
          Branch Sides:
            - BranchSide:      'istream-unix.c:60,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-unix.c:61,35'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'istream-unix.c:33,10'
          Dst:             i_stream_file_read
        - Src:             'istream-unix.c:35,2'
          Dst:             i_panic
        - Src:             'istream-unix.c:36,2'
          Dst:             i_panic
        - Src:             'istream-unix.c:37,7'
          Dst:             i_stream_try_alloc
        - Src:             'istream-unix.c:40,8'
          Dst:             fd_read
        - Src:             'istream-unix.c:53,8'
          Dst:             __errno_location
        - Src:             'istream-unix.c:53,26'
          Dst:             __errno_location
        - Src:             'istream-unix.c:57,4'
          Dst:             __errno_location
        - Src:             'istream-unix.c:57,4'
          Dst:             i_panic
        - Src:             'istream-unix.c:60,4'
          Dst:             __errno_location
        - Src:             'istream-unix.c:60,4'
          Dst:             i_panic
        - Src:             'istream-unix.c:61,35'
          Dst:             __errno_location
    - functionName:    i_stream_unix_close
      functionSourceFile: '/src/dovecot/src/lib/istream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_close_fd_path
        - i_stream_file_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'istream-unix.c:21,2'
          Dst:             i_close_fd_path
        - Src:             'istream-unix.c:22,2'
          Dst:             i_stream_file_close
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_stream_create_unix
      functionSourceFile: '/src/dovecot/src/lib/istream-unix.c'
      linkageType:     externalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - max_buffer_size
      BBCount:         7
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_create_file_common
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'istream-unix.c:74,2'
          Branch Sides:
            - BranchSide:      'istream-unix.c:74,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'istream-unix.c:74,2'
              BranchSideFuncs:
                - malloc_multiply_check.6828
                - p_malloc.6830
                - i_stream_create_file_common
      Callsites:
        - Src:             'istream-unix.c:74,2'
          Dst:             i_panic
        - Src:             'istream-unix.c:76,12'
          Dst:             malloc_multiply_check
        - Src:             'istream-unix.c:76,12'
          Dst:             p_malloc
        - Src:             'istream-unix.c:78,10'
          Dst:             i_stream_create_file_common
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_clear_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_set_used_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:191,2'
          Dst:             buffer_set_used_size
    - functionName:    timeval_sub_usecs
      functionSourceFile: '/src/dovecot/src/lib/./time-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - tv
        - usecs
      BBCount:         10
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './time-util.h:52,2'
          Branch Sides:
            - BranchSide:      './time-util.h:52,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './time-util.h:53,25'
              BranchSideFuncs: []
        - Branch String:   './time-util.h:55,6'
          Branch Sides:
            - BranchSide:      './time-util.h:55,6'
              BranchSideFuncs: []
            - BranchSide:      './time-util.h:56,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             './time-util.h:52,2'
          Dst:             i_panic
    - functionName:    io_loop_timeouts_update
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ioloop
        - diff_usecs
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - priorityq_count
        - priorityq_items
        - timeval_add_usecs
        - timeval_sub_usecs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:604,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:605,42'
              BranchSideFuncs:
                - timeval_sub_usecs
                - timeval_add_usecs
            - BranchSide:      'ioloop.c:612,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:607,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:608,23'
              BranchSideFuncs:
                - timeval_add_usecs
                - timeval_sub_usecs
            - BranchSide:      'ioloop.c:610,23'
              BranchSideFuncs:
                - timeval_sub_usecs
                - timeval_add_usecs
      Callsites:
        - Src:             'ioloop.c:602,10'
          Dst:             priorityq_count
        - Src:             'ioloop.c:603,10'
          Dst:             priorityq_items
        - Src:             'ioloop.c:608,4'
          Dst:             timeval_add_usecs
        - Src:             'ioloop.c:610,4'
          Dst:             timeval_sub_usecs
    - functionName:    timeval_add_usecs
      functionSourceFile: '/src/dovecot/src/lib/./time-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - tv
        - usecs
      BBCount:         10
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './time-util.h:40,2'
          Branch Sides:
            - BranchSide:      './time-util.h:40,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './time-util.h:41,25'
              BranchSideFuncs: []
        - Branch String:   './time-util.h:43,6'
          Branch Sides:
            - BranchSide:      './time-util.h:43,6'
              BranchSideFuncs: []
            - BranchSide:      './time-util.h:44,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             './time-util.h:40,2'
          Dst:             i_panic
    - functionName:    ioloop_add_wait_time
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - timeval_diff_usecs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:628,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:630,8'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:633,31'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:636,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:637,19'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:638,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:627,9'
          Dst:             timeval_diff_usecs
    - functionName:    io_loops_timeouts_update
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - diff_usecs
      BBCount:         7
      ICount:          37
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - io_loop_timeouts_update
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:618,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:619,27'
              BranchSideFuncs:
                - io_loop_timeouts_update
            - BranchSide:      'ioloop.c:620,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:619,3'
          Dst:             io_loop_timeouts_update
    - functionName:    timeval_add_msecs
      functionSourceFile: '/src/dovecot/src/lib/./time-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - tv
        - msecs
      BBCount:         4
      ICount:          51
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './time-util.h:66,6'
          Branch Sides:
            - BranchSide:      './time-util.h:66,6'
              BranchSideFuncs: []
            - BranchSide:      './time-util.h:67,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    timeout_get_wait_time
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - timeout
        - tv_r
        - tv_now
        - in_timeout_loop
      BBCount:         39
      ICount:          270
      EdgeCount:       48
      CyclomaticComplexity: 11
      functionsReached:
        - i_gettimeofday
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:460,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:461,18'
              BranchSideFuncs:
                - i_gettimeofday
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:462,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:465,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:465,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:466,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:466,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:466,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:468,17'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:470,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:471,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:475,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:475,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:477,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:481,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:481,24'
          Branch Sides:
            - BranchSide:      'ioloop.c:481,27'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:487,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:481,46'
          Branch Sides:
            - BranchSide:      'ioloop.c:481,50'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:487,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:481,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:484,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:487,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:487,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:488,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:491,8'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:492,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:492,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:492,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:492,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:492,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:492,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:492,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:492,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:493,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:461,3'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:465,2'
          Dst:             i_panic
        - Src:             'ioloop.c:466,2'
          Dst:             i_panic
        - Src:             'ioloop.c:492,2'
          Dst:             i_panic
    - functionName:    io_file_unlink
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - io
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:144,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:145,20'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:147,29'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:149,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:150,20'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:154,6'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:154,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:154,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:155,33'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_loop_get_active_global_root
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1383
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1378,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1379,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1380,6'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1380,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1381,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1382,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_wait_timer_get_usecs
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1372
      functionLinenumberEnd: 1373
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - timer
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_wait_timer_move
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1358
      functionLinenumberEnd: 1359
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _timer
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_wait_timer_move_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1359,9'
          Dst:             io_wait_timer_move_to
    - functionName:    io_wait_timer_move_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1347
      functionLinenumberEnd: 1354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _timer
        - ioloop
      BBCount:         17
      ICount:          130
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1351,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1351,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1351,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1351,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1351,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1352,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1352,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1352,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1352,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_wait_timer_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1340
      functionLinenumberEnd: 1342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - source_filename
        - source_linenum
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_wait_timer_add_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1341,9'
          Dst:             io_wait_timer_add_to
    - functionName:    io_wait_timer_add_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1326
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ioloop
        - source_filename
        - source_linenum
      BBCount:         8
      ICount:          77
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1333,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1333,2'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1333,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1329,10'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:1329,10'
          Dst:             p_malloc
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    io_loop_find_fd_conditions
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1309
      functionLinenumberEnd: 1319
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ioloop
        - fd
      BBCount:         14
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1313,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1313,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1315,12'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1315,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1316,7'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1319,9'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1316,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1317,18'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1318,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1313,2'
          Dst:             i_panic
    - functionName:    io_loop_get_wait_usecs
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1304
      functionLinenumberEnd: 1305
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_is_empty
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1300
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - array_count_i
        - priorityq_count
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1298,34'
          Branch Sides:
            - BranchSide:      'ioloop.c:1298,34'
              BranchSideFuncs:
                - priorityq_count
                - array_count_i.7046
            - BranchSide:      'ioloop.c:1299,19'
              BranchSideFuncs:
                - priorityq_count
                - array_count_i.7046
        - Branch String:   'ioloop.c:1299,42'
          Branch Sides:
            - BranchSide:      'ioloop.c:1299,42'
              BranchSideFuncs:
                - array_count_i.7046
            - BranchSide:      'ioloop.c:1300,3'
              BranchSideFuncs:
                - array_count_i.7046
      Callsites:
        - Src:             'ioloop.c:1299,3'
          Dst:             priorityq_count
        - Src:             'ioloop.c:1300,3'
          Dst:             array_count_i
    - functionName:    io_loop_have_immediate_timeouts
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1290
      functionLinenumberEnd: 1293
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_get_wait_time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1293,9'
          Dst:             io_loop_get_wait_time
    - functionName:    io_loop_get_wait_time
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - tv_r
      BBCount:         21
      ICount:          157
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - i_gettimeofday
        - i_panic
        - priorityq_peek
        - timeout_get_wait_time
        - timeval_add_msecs
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:509,22'
          Branch Sides:
            - BranchSide:      'ioloop.c:509,25'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
                - i_gettimeofday
            - BranchSide:      'ioloop.c:519,6'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
                - i_gettimeofday
        - Branch String:   'ioloop.c:509,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:512,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:519,6'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
                - i_gettimeofday
        - Branch String:   'ioloop.c:519,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:520,3'
              BranchSideFuncs:
                - i_gettimeofday
                - timeval_add_msecs
                - i_panic
            - BranchSide:      'ioloop.c:525,10'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeval_add_msecs
                - i_panic
        - Branch String:   'ioloop.c:536,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:536,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:536,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:536,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:536,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:536,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:536,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:536,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:537,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:503,9'
          Dst:             priorityq_peek
        - Src:             'ioloop.c:520,3'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:526,11'
          Dst:             timeout_get_wait_time
        - Src:             'ioloop.c:529,2'
          Dst:             timeval_add_msecs
        - Src:             'ioloop.c:536,2'
          Dst:             i_panic
    - functionName:    io_loop_have_ios
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1285
      functionLinenumberEnd: 1286
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_move_timeout
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1280
      functionLinenumberEnd: 1281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _timeout
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_move_timeout_to
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1281,9'
          Dst:             io_loop_move_timeout_to
    - functionName:    io_loop_move_timeout_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1268
      functionLinenumberEnd: 1277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - _timeout
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - timeout_copy
        - timeout_remove
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:1271,21'
          Branch Sides:
            - BranchSide:      'ioloop.c:1271,24'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1272,10'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1271,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1272,10'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1274,24'
              BranchSideFuncs:
                - timeout_copy
                - timeout_remove
      Callsites:
        - Src:             'ioloop.c:1274,11'
          Dst:             timeout_copy
        - Src:             'ioloop.c:1275,2'
          Dst:             timeout_remove
    - functionName:    timeout_copy
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - old_to
        - ioloop
      BBCount:         13
      ICount:          117
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - i_panic
        - priorityq_add
        - timeout_add_common
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:385,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:386,17'
              BranchSideFuncs:
                - priorityq_add
            - BranchSide:      'ioloop.c:387,12'
              BranchSideFuncs:
                - array_append_i.7080
                - i_panic
        - Branch String:   'ioloop.c:388,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:388,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:389,3'
              BranchSideFuncs:
                - array_append_i.7080
      Callsites:
        - Src:             'ioloop.c:378,11'
          Dst:             timeout_add_common
        - Src:             'ioloop.c:386,3'
          Dst:             priorityq_add
        - Src:             'ioloop.c:388,3'
          Dst:             i_panic
        - Src:             'ioloop.c:389,3'
          Dst:             array_append_i
    - functionName:    timeout_remove
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _timeout
      BBCount:         22
      ICount:          109
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - array_delete_i
        - array_lsearch_ptr_idx_i
        - i_unreached
        - priorityq_remove
        - timeout_free
      functionUses:    7
      BranchProfiles:
        - Branch String:   'ioloop.c:407,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:408,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:410,11'
              BranchSideFuncs:
                - timeout_free
                - i_unreached
                - array_delete_i.7074
                - array_lsearch_ptr_idx_i
                - priorityq_remove
        - Branch String:   'ioloop.c:413,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:414,20'
              BranchSideFuncs:
                - priorityq_remove
                - timeout_free
            - BranchSide:      'ioloop.c:415,12'
              BranchSideFuncs:
                - timeout_free
                - i_unreached
                - array_delete_i.7074
                - array_lsearch_ptr_idx_i
        - Branch String:   'ioloop.c:418,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:418,8'
              BranchSideFuncs:
                - array_lsearch_ptr_idx_i
                - i_unreached
                - array_delete_i.7074
                - timeout_free
            - BranchSide:      'ioloop.c:418,8'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7074
                - timeout_free
        - Branch String:   'ioloop.c:418,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:419,4'
              BranchSideFuncs:
                - array_delete_i.7074
                - timeout_free
            - BranchSide:      'ioloop.c:420,3'
              BranchSideFuncs:
                - array_delete_i.7074
                - timeout_free
        - Branch String:   'ioloop.c:418,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:419,4'
              BranchSideFuncs:
                - array_delete_i.7074
                - timeout_free
            - BranchSide:      'ioloop.c:420,3'
              BranchSideFuncs:
                - array_delete_i.7074
                - timeout_free
      Callsites:
        - Src:             'ioloop.c:414,3'
          Dst:             priorityq_remove
        - Src:             'ioloop.c:418,8'
          Dst:             array_lsearch_ptr_idx_i
        - Src:             'ioloop.c:419,4'
          Dst:             i_unreached
        - Src:             'ioloop.c:420,3'
          Dst:             array_delete_i
        - Src:             'ioloop.c:422,2'
          Dst:             timeout_free
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:244,2'
          Dst:             buffer_delete
    - functionName:    timeout_free
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - timeout
      BBCount:         8
      ICount:          39
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - io_loop_context_unref
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:397,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:398,26'
              BranchSideFuncs:
                - io_loop_context_unref
                - p_free_internal.7075
            - BranchSide:      'ioloop.c:399,2'
              BranchSideFuncs:
                - p_free_internal.7075
      Callsites:
        - Src:             'ioloop.c:398,3'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:399,2'
          Dst:             p_free_internal
    - functionName:    io_loop_context_unref
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1057
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ctx
      BBCount:         15
      ICount:          88
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - array_free_i
        - i_panic
        - p_free_internal
      functionUses:    5
      BranchProfiles:
        - Branch String:   'ioloop.c:1062,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1062,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1063,8'
              BranchSideFuncs:
                - array_free_i.7078
                - array_free_i.7078
                - p_free_internal.7075
                - i_panic
        - Branch String:   'ioloop.c:1063,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1064,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1067,2'
              BranchSideFuncs:
                - array_free_i.7078
                - array_free_i.7078
                - p_free_internal.7075
                - i_panic
        - Branch String:   'ioloop.c:1067,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1067,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1069,2'
              BranchSideFuncs:
                - array_free_i.7078
                - array_free_i.7078
                - p_free_internal.7075
      Callsites:
        - Src:             'ioloop.c:1062,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1067,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1069,2'
          Dst:             array_free_i
        - Src:             'ioloop.c:1070,2'
          Dst:             array_free_i
        - Src:             'ioloop.c:1071,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    timeout_add_common
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_loop_context_ref
        - malloc_multiply_check
        - p_malloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:278,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:278,6'
              BranchSideFuncs:
                - io_loop_context_ref
            - BranchSide:      'ioloop.c:279,18'
              BranchSideFuncs:
                - io_loop_context_ref
      Callsites:
        - Src:             'ioloop.c:269,12'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:269,12'
          Dst:             p_malloc
        - Src:             'ioloop.c:280,3'
          Dst:             io_loop_context_ref
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    io_loop_context_ref
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1054
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:1051,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1051,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1051,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1051,2'
          Dst:             i_panic
    - functionName:    io_loop_move_io
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1263
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _io
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_loop_move_io_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1263,9'
          Dst:             io_loop_move_io_to
    - functionName:    io_loop_move_io_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1229
      functionLinenumberEnd: 1259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - _io
      BBCount:         21
      ICount:          155
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - i_stream_ref
        - i_stream_set_io
        - io_add_file
        - io_remove
        - io_set_pending
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ioloop.c:1233,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1234,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1236,2'
              BranchSideFuncs:
                - io_add_file
                - io_remove
                - i_stream_set_io
                - io_set_pending
                - i_stream_ref
                - i_panic
        - Branch String:   'ioloop.c:1236,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1236,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1238,6'
              BranchSideFuncs:
                - io_add_file
                - io_remove
                - i_stream_set_io
                - io_set_pending
                - i_stream_ref
        - Branch String:   'ioloop.c:1238,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1239,10'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1241,34'
              BranchSideFuncs:
                - io_add_file
                - io_remove
                - i_stream_set_io
                - io_set_pending
                - i_stream_ref
        - Branch String:   'ioloop.c:1246,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1248,26'
              BranchSideFuncs:
                - i_stream_ref
                - io_remove
                - i_stream_set_io
                - io_set_pending
            - BranchSide:      'ioloop.c:1251,6'
              BranchSideFuncs:
                - io_remove
                - i_stream_set_io
                - io_set_pending
        - Branch String:   'ioloop.c:1251,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1252,19'
              BranchSideFuncs:
                - io_set_pending
                - io_remove
                - i_stream_set_io
            - BranchSide:      'ioloop.c:1253,12'
              BranchSideFuncs:
                - io_remove
                - i_stream_set_io
        - Branch String:   'ioloop.c:1254,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1256,19'
              BranchSideFuncs:
                - i_stream_set_io
            - BranchSide:      'ioloop.c:1258,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:1236,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1242,16'
          Dst:             io_add_file
        - Src:             'ioloop.c:1249,3'
          Dst:             i_stream_ref
        - Src:             'ioloop.c:1252,3'
          Dst:             io_set_pending
        - Src:             'ioloop.c:1253,2'
          Dst:             io_remove
        - Src:             'ioloop.c:1256,3'
          Dst:             i_stream_set_io
    - functionName:    io_add_file
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - fd
        - condition
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         23
      ICount:          218
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - io_loop_context_ref
        - io_loop_handle_add
        - io_loop_initialize_handler
        - malloc_multiply_check
        - p_malloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:56,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:56,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:57,2'
              BranchSideFuncs:
                - malloc_multiply_check.7060
                - p_malloc.7061
                - io_loop_handle_add
                - io_loop_initialize_handler
                - io_loop_context_ref
                - i_panic
        - Branch String:   'ioloop.c:57,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:57,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:59,7'
              BranchSideFuncs:
                - malloc_multiply_check.7060
                - p_malloc.7061
                - io_loop_handle_add
                - io_loop_initialize_handler
                - io_loop_context_ref
        - Branch String:   'ioloop.c:69,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:70,16'
              BranchSideFuncs:
                - io_loop_context_ref
                - io_loop_handle_add
                - io_loop_initialize_handler
            - BranchSide:      'ioloop.c:74,6'
              BranchSideFuncs:
                - io_loop_handle_add
                - io_loop_initialize_handler
        - Branch String:   'ioloop.c:74,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:75,30'
              BranchSideFuncs:
                - io_loop_initialize_handler
                - io_loop_handle_add
            - BranchSide:      'ioloop.c:76,6'
              BranchSideFuncs:
                - io_loop_handle_add
        - Branch String:   'ioloop.c:76,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:0,0'
              BranchSideFuncs:
                - io_loop_handle_add
            - BranchSide:      'ioloop.c:77,22'
              BranchSideFuncs:
                - io_loop_handle_add
        - Branch String:   'ioloop.c:83,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:83,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:84,35'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:56,2'
          Dst:             i_panic
        - Src:             'ioloop.c:57,2'
          Dst:             i_panic
        - Src:             'ioloop.c:59,7'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:59,7'
          Dst:             p_malloc
        - Src:             'ioloop.c:71,3'
          Dst:             io_loop_context_ref
        - Src:             'ioloop.c:75,3'
          Dst:             io_loop_initialize_handler
        - Src:             'ioloop.c:77,3'
          Dst:             io_loop_handle_add
    - functionName:    io_set_pending
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - io
      BBCount:         10
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    9
      BranchProfiles:
        - Branch String:   'ioloop.c:222,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:222,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:224,7'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:224,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:224,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:225,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:222,2'
          Dst:             i_panic
    - functionName:    io_remove
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - io
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_remove_full
      functionUses:    20
      BranchProfiles:
        - Branch String:   'ioloop.c:204,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:205,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:207,17'
              BranchSideFuncs:
                - io_remove_full
      Callsites:
        - Src:             'ioloop.c:207,2'
          Dst:             io_remove_full
    - functionName:    io_remove_full
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - _io
        - closed
      BBCount:         28
      ICount:          168
      EdgeCount:       33
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - i_stream_unref
        - i_stream_unset_io
        - io_file_unlink
        - io_loop_context_unref
        - io_loop_handle_remove
        - io_loop_notify_remove
        - p_free_internal
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:162,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:162,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:164,3'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
                - io_loop_context_unref
                - i_panic
        - Branch String:   'ioloop.c:170,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:171,3'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
                - io_loop_context_unref
                - i_panic
            - BranchSide:      'ioloop.c:175,6'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
                - io_loop_context_unref
        - Branch String:   'ioloop.c:171,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:171,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:172,3'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
                - io_loop_context_unref
        - Branch String:   'ioloop.c:175,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:176,26'
              BranchSideFuncs:
                - io_loop_context_unref
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
            - BranchSide:      'ioloop.c:178,7'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
                - io_loop_notify_remove
        - Branch String:   'ioloop.c:178,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:179,25'
              BranchSideFuncs:
                - io_loop_notify_remove
            - BranchSide:      'ioloop.c:181,47'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
                - i_stream_unset_io
        - Branch String:   'ioloop.c:184,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:186,22'
              BranchSideFuncs:
                - i_stream_unset_io
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
            - BranchSide:      'ioloop.c:189,18'
              BranchSideFuncs:
                - io_file_unlink
                - p_free_internal.7075
                - i_stream_unref
                - io_loop_handle_remove
        - Branch String:   'ioloop.c:190,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:191,26'
              BranchSideFuncs:
                - io_loop_handle_remove
                - i_stream_unref
            - BranchSide:      'ioloop.c:193,4'
              BranchSideFuncs:
                - p_free_internal.7075
                - i_stream_unref
      Callsites:
        - Src:             'ioloop.c:162,2'
          Dst:             i_panic
        - Src:             'ioloop.c:171,3'
          Dst:             i_panic
        - Src:             'ioloop.c:176,3'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:179,3'
          Dst:             io_loop_notify_remove
        - Src:             'ioloop.c:186,4'
          Dst:             i_stream_unset_io
        - Src:             'ioloop.c:189,3'
          Dst:             io_file_unlink
        - Src:             'ioloop.c:191,4'
          Dst:             io_loop_handle_remove
        - Src:             'ioloop.c:193,4'
          Dst:             p_free_internal
        - Src:             'ioloop.c:198,3'
          Dst:             i_stream_unref
    - functionName:    io_loop_initialize_handler
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - io_loop_handler_init
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:42,46'
          Branch Sides:
            - BranchSide:      'ioloop.c:42,21'
              BranchSideFuncs:
                - io_loop_handler_init
            - BranchSide:      'ioloop.c:43,3'
              BranchSideFuncs:
                - io_loop_handler_init
        - Branch String:   'ioloop.c:42,21'
          Branch Sides:
            - BranchSide:      'ioloop.c:42,21'
              BranchSideFuncs:
                - io_loop_handler_init
            - BranchSide:      'ioloop.c:44,3'
              BranchSideFuncs:
                - io_loop_handler_init
      Callsites:
        - Src:             'ioloop.c:45,2'
          Dst:             io_loop_handler_init
    - functionName:    io_loop_get_current_context
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1224
      functionLinenumberEnd: 1225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_context_switch
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1211
      functionLinenumberEnd: 1221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - io_loop_context_activate
        - io_loop_context_deactivate
        - io_loop_context_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1212,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1213,7'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - io_loop_context_activate
                - io_loop_context_unref
            - BranchSide:      'ioloop.c:1220,27'
              BranchSideFuncs:
                - io_loop_context_activate
        - Branch String:   'ioloop.c:1213,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1214,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1215,30'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - io_loop_context_activate
                - io_loop_context_unref
        - Branch String:   'ioloop.c:1217,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1218,27'
              BranchSideFuncs:
                - io_loop_context_unref
                - io_loop_context_activate
            - BranchSide:      'ioloop.c:1219,2'
              BranchSideFuncs:
                - io_loop_context_activate
      Callsites:
        - Src:             'ioloop.c:1215,3'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:1218,4'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:1220,2'
          Dst:             io_loop_context_activate
    - functionName:    io_loop_context_deactivate
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1208
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         23
      ICount:          136
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_get_modifiable_data
        - i_panic
        - io_loop_context_pop_global_events
        - io_loop_context_remove_deleted_callbacks
        - io_loop_context_unref
        - t_pop
        - t_push
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ioloop.c:1191,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1191,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1193,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'ioloop.c:1193,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1194,8'
              BranchSideFuncs:
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'ioloop.c:1204,2'
              BranchSideFuncs:
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
        - Branch String:   'ioloop.c:1194,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1197,3'
              BranchSideFuncs:
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'ioloop.c:1198,8'
              BranchSideFuncs:
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'ioloop.c:1198,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:1198,32'
              BranchSideFuncs:
                - t_push
                - t_pop
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
                - i_panic
            - BranchSide:      'ioloop.c:1201,4'
              BranchSideFuncs:
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'ioloop.c:1200,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1200,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1200,6'
              BranchSideFuncs:
                - io_loop_context_pop_global_events
                - io_loop_context_remove_deleted_callbacks
                - io_loop_context_unref
                - t_push
                - t_pop
                - i_panic
      Callsites:
        - Src:             'ioloop.c:1191,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1193,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'ioloop.c:1198,32'
          Dst:             t_push
        - Src:             'ioloop.c:1200,6'
          Dst:             t_pop
        - Src:             'ioloop.c:1200,6'
          Dst:             i_panic
        - Src:             'ioloop.c:1205,2'
          Dst:             io_loop_context_pop_global_events
        - Src:             'ioloop.c:1206,2'
          Dst:             io_loop_context_remove_deleted_callbacks
        - Src:             'ioloop.c:1207,2'
          Dst:             io_loop_context_unref
    - functionName:    io_loop_context_activate
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         24
      ICount:          144
      EdgeCount:       26
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_get_modifiable_data
        - i_panic
        - io_loop_context_push_global_events
        - io_loop_context_ref
        - t_pop
        - t_push
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:1173,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1173,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1175,25'
              BranchSideFuncs:
                - io_loop_context_push_global_events
                - io_loop_context_ref
                - buffer_get_modifiable_data
                - t_push
                - t_pop
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:1178,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1179,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:1185,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1179,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:1179,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1180,7'
              BranchSideFuncs:
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'ioloop.c:1180,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1180,29'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:1183,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:1182,5'
          Branch Sides:
            - BranchSide:      'ioloop.c:1182,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1182,5'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_panic
      Callsites:
        - Src:             'ioloop.c:1173,2'
          Dst:             i_panic
        - Src:             'ioloop.c:1176,2'
          Dst:             io_loop_context_push_global_events
        - Src:             'ioloop.c:1177,2'
          Dst:             io_loop_context_ref
        - Src:             'ioloop.c:1178,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'ioloop.c:1179,3'
          Dst:             i_panic
        - Src:             'ioloop.c:1180,29'
          Dst:             t_push
        - Src:             'ioloop.c:1182,5'
          Dst:             t_pop
        - Src:             'ioloop.c:1182,5'
          Dst:             i_panic
    - functionName:    io_loop_context_push_global_events
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1128
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_clear_i
        - array_get_i
        - array_is_created_i
        - event_get_global
        - event_push_global
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1134,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1135,3'
              BranchSideFuncs:
                - array_get_i.7045
                - array_clear_i.7048
                - event_push_global
            - BranchSide:      'ioloop.c:1138,11'
              BranchSideFuncs:
                - array_get_i.7045
                - array_clear_i.7048
                - event_push_global
        - Branch String:   'ioloop.c:1139,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1140,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1144,11'
              BranchSideFuncs:
                - array_clear_i.7048
                - event_push_global
        - Branch String:   'ioloop.c:1144,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1145,21'
              BranchSideFuncs:
                - event_push_global
                - array_clear_i.7048
            - BranchSide:      'ioloop.c:1146,2'
              BranchSideFuncs:
                - array_clear_i.7048
      Callsites:
        - Src:             'ioloop.c:1132,27'
          Dst:             event_get_global
        - Src:             'ioloop.c:1134,7'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:1138,11'
          Dst:             array_get_i
        - Src:             'ioloop.c:1145,3'
          Dst:             event_push_global
        - Src:             'ioloop.c:1146,2'
          Dst:             array_clear_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_context_pop_global_events
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1150
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         13
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - event_get_global
        - event_pop_global
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1159,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1160,3'
              BranchSideFuncs:
                - array_is_created_i.7097
                - array_create_i.7101
                - array_append_i.7080
                - event_pop_global
                - event_get_global
                - i_panic
            - BranchSide:      'ioloop.c:1166,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1160,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:1160,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1161,8'
              BranchSideFuncs:
                - array_is_created_i.7097
                - array_create_i.7101
                - array_append_i.7080
                - event_pop_global
                - event_get_global
                - i_panic
        - Branch String:   'ioloop.c:1161,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1162,4'
              BranchSideFuncs:
                - array_append_i.7080
                - event_pop_global
                - event_get_global
                - array_is_created_i.7097
                - array_create_i.7101
                - i_panic
            - BranchSide:      'ioloop.c:1163,3'
              BranchSideFuncs:
                - array_append_i.7080
                - event_pop_global
                - event_get_global
                - array_is_created_i.7097
                - array_create_i.7101
                - i_panic
      Callsites:
        - Src:             'ioloop.c:1159,18'
          Dst:             event_get_global
        - Src:             'ioloop.c:1160,3'
          Dst:             i_panic
        - Src:             'ioloop.c:1161,8'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:1162,4'
          Dst:             array_create_i
        - Src:             'ioloop.c:1163,3'
          Dst:             array_append_i
        - Src:             'ioloop.c:1164,3'
          Dst:             event_pop_global
    - functionName:    io_loop_context_remove_deleted_callbacks
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1112
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_delete_i
        - array_get_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1117,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1118,7'
              BranchSideFuncs:
                - array_delete_i.7074
                - array_get_i.7045
            - BranchSide:      'ioloop.c:1125,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:1118,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1119,5'
              BranchSideFuncs:
                - array_delete_i.7074
                - array_get_i.7045
            - BranchSide:      'ioloop.c:1121,4'
              BranchSideFuncs:
                - array_delete_i.7074
                - array_get_i.7045
      Callsites:
        - Src:             'ioloop.c:1116,8'
          Dst:             array_get_i
        - Src:             'ioloop.c:1121,4'
          Dst:             array_delete_i
        - Src:             'ioloop.c:1122,10'
          Dst:             array_get_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    5
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7047
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7047
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    io_loop_context_remove_callbacks
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1093
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - activate
        - deactivate
        - context
      BBCount:         14
      ICount:          102
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_get_modifiable_data
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1096,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1097,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1107,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:1097,30'
          Branch Sides:
            - BranchSide:      'ioloop.c:1098,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1106,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:1098,32'
          Branch Sides:
            - BranchSide:      'ioloop.c:1098,35'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:1106,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:1097,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1101,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:1106,2'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'ioloop.c:1096,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'ioloop.c:1107,2'
          Dst:             i_panic
    - functionName:    io_loop_context_add_callbacks
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1078
      functionLinenumberEnd: 1087
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - activate
        - deactivate
        - context
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_append_i
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1086,2'
          Dst:             array_append_i
    - functionName:    io_loop_context_new
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1046
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_i
        - malloc_multiply_check
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:1042,8'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:1042,8'
          Dst:             p_malloc
        - Src:             'ioloop.c:1045,2'
          Dst:             array_create_i
    - functionName:    io_loop_remove_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1036
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         11
      ICount:          41
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - array_delete_i
        - array_lsearch_ptr_idx_i
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1033,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1033,7'
              BranchSideFuncs:
                - array_lsearch_ptr_idx_i
                - i_unreached
                - array_delete_i.7074
            - BranchSide:      'ioloop.c:1033,7'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7074
        - Branch String:   'ioloop.c:1033,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1033,7'
              BranchSideFuncs:
                - array_delete_i.7074
            - BranchSide:      'ioloop.c:1034,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'ioloop.c:1033,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1033,6'
              BranchSideFuncs:
                - array_delete_i.7074
            - BranchSide:      'ioloop.c:1034,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'ioloop.c:1033,7'
          Dst:             array_lsearch_ptr_idx_i
        - Src:             'ioloop.c:1034,3'
          Dst:             i_unreached
        - Src:             'ioloop.c:1035,2'
          Dst:             array_delete_i
    - functionName:    io_destroy_callbacks_free
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 975
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_free_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:974,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:974,2'
              BranchSideFuncs:
                - array_free_i.7078
            - BranchSide:      'ioloop.c:974,2'
              BranchSideFuncs:
                - array_free_i.7078
      Callsites:
        - Src:             'ioloop.c:974,2'
          Dst:             array_free_i
    - functionName:    io_loop_add_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1021
      functionLinenumberEnd: 1027
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - io_destroy_callbacks_free
        - lib_atexit_priority
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1022,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1022,6'
              BranchSideFuncs:
                - array_append_i.7080
            - BranchSide:      'ioloop.c:1023,3'
              BranchSideFuncs:
                - array_create_i.7101
                - lib_atexit_priority
                - array_append_i.7080
      Callsites:
        - Src:             'ioloop.c:1022,7'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:1023,3'
          Dst:             array_create_i
        - Src:             'ioloop.c:1024,3'
          Dst:             lib_atexit_priority
        - Src:             'ioloop.c:1024,3'
          Dst:             io_destroy_callbacks_free
        - Src:             'ioloop.c:1026,2'
          Dst:             array_append_i
    - functionName:    io_loop_remove_switch_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1012
      functionLinenumberEnd: 1018
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         11
      ICount:          41
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - array_delete_i
        - array_lsearch_ptr_idx_i
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:1015,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1015,7'
              BranchSideFuncs:
                - array_lsearch_ptr_idx_i
                - i_unreached
                - array_delete_i.7074
            - BranchSide:      'ioloop.c:1015,7'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7074
        - Branch String:   'ioloop.c:1015,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:1015,7'
              BranchSideFuncs:
                - array_delete_i.7074
            - BranchSide:      'ioloop.c:1016,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'ioloop.c:1015,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1015,6'
              BranchSideFuncs:
                - array_delete_i.7074
            - BranchSide:      'ioloop.c:1016,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'ioloop.c:1015,7'
          Dst:             array_lsearch_ptr_idx_i
        - Src:             'ioloop.c:1016,3'
          Dst:             i_unreached
        - Src:             'ioloop.c:1017,2'
          Dst:             array_delete_i
    - functionName:    io_switch_callbacks_free
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 968
      functionLinenumberEnd: 970
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_free_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:969,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:969,2'
              BranchSideFuncs:
                - array_free_i.7078
            - BranchSide:      'ioloop.c:969,2'
              BranchSideFuncs:
                - array_free_i.7078
      Callsites:
        - Src:             'ioloop.c:969,2'
          Dst:             array_free_i
    - functionName:    io_loop_add_switch_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1009
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - io_switch_callbacks_free
        - lib_atexit_priority
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1004,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:1004,6'
              BranchSideFuncs:
                - array_append_i.7080
            - BranchSide:      'ioloop.c:1005,3'
              BranchSideFuncs:
                - array_create_i.7101
                - lib_atexit_priority
                - array_append_i.7080
      Callsites:
        - Src:             'ioloop.c:1004,7'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:1005,3'
          Dst:             array_create_i
        - Src:             'ioloop.c:1006,3'
          Dst:             lib_atexit_priority
        - Src:             'ioloop.c:1006,3'
          Dst:             io_switch_callbacks_free
        - Src:             'ioloop.c:1008,2'
          Dst:             array_append_i
    - functionName:    io_loop_get_root
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 999
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:997,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:998,12'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:999,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_loop_set_time_moved_callback
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 963
      functionLinenumberEnd: 965
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - callback
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_wait_timer_remove
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 1363
      functionLinenumberEnd: 1369
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _timer
      BBCount:         16
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:1367,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1367,2'
              BranchSideFuncs:
                - p_free_internal.7075
            - BranchSide:      'ioloop.c:1367,2'
              BranchSideFuncs:
                - p_free_internal.7075
        - Branch String:   'ioloop.c:1367,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:1367,2'
              BranchSideFuncs:
                - p_free_internal.7075
            - BranchSide:      'ioloop.c:1368,2'
              BranchSideFuncs:
                - p_free_internal.7075
      Callsites:
        - Src:             'ioloop.c:1368,2'
          Dst:             p_free_internal
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    io_loop_destroy
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 959
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _ioloop
      BBCount:         72
      ICount:          460
      EdgeCount:       85
      CyclomaticComplexity: 15
      functionsReached:
        - array_free_i
        - array_is_created_i
        - backtrace_get
        - i_memcpy
        - i_panic
        - i_warning
        - io_loop_context_unref
        - io_loop_handler_deinit
        - io_loop_notify_handler_deinit
        - io_loop_set_current
        - io_remove
        - io_wait_timer_remove
        - p_free_internal
        - priorityq_deinit
        - priorityq_pop
        - t_pop
        - t_push
        - t_strdup_printf
        - timeout_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:871,9'
          Branch Sides:
            - BranchSide:      'ioloop.c:871,9'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:872,6'
              BranchSideFuncs:
                - array_is_created_i.7097
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7103
        - Branch String:   'ioloop.c:872,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:874,3'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7103
            - BranchSide:      'ioloop.c:879,22'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
        - Branch String:   'ioloop.c:874,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:874,3'
              BranchSideFuncs:
                - i_memcpy.7103
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'ioloop.c:874,3'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_memcpy.7103
                - i_panic
        - Branch String:   'ioloop.c:874,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:874,55'
              BranchSideFuncs:
                - t_push
                - t_pop
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - i_memcpy.7103
                - i_panic
            - BranchSide:      'ioloop.c:877,2'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
        - Branch String:   'ioloop.c:876,5'
          Branch Sides:
            - BranchSide:      'ioloop.c:876,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:876,5'
              BranchSideFuncs:
                - io_loop_set_current
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
                - io_loop_notify_handler_deinit
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7103
        - Branch String:   'ioloop.c:881,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:882,33'
              BranchSideFuncs:
                - io_loop_notify_handler_deinit
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
            - BranchSide:      'ioloop.c:884,2'
              BranchSideFuncs:
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_warning
                - io_remove
                - i_panic
        - Branch String:   'ioloop.c:884,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:885,24'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - io_remove
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:900,2'
              BranchSideFuncs:
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
        - Branch String:   'ioloop.c:893,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:894,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:896,20'
              BranchSideFuncs:
                - i_warning
                - io_remove
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
                - t_strdup_printf
                - i_panic
        - Branch String:   'ioloop.c:900,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:900,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:902,2'
              BranchSideFuncs:
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
        - Branch String:   'ioloop.c:902,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:902,2'
              BranchSideFuncs:
                - i_memcpy.7103
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
            - BranchSide:      'ioloop.c:902,2'
              BranchSideFuncs:
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_memcpy.7103
                - i_panic
        - Branch String:   'ioloop.c:902,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:904,40'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - timeout_free
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - i_memcpy.7103
                - i_panic
            - BranchSide:      'ioloop.c:915,2'
              BranchSideFuncs:
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
        - Branch String:   'ioloop.c:908,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:909,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:911,20'
              BranchSideFuncs:
                - i_warning
                - timeout_free
                - array_free_i.7078
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_warning
                - timeout_free
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_memcpy.7103
        - Branch String:   'ioloop.c:917,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:918,42'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - timeout_free
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:931,20'
              BranchSideFuncs:
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
        - Branch String:   'ioloop.c:924,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:925,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:927,20'
              BranchSideFuncs:
                - i_warning
                - timeout_free
                - priorityq_pop
                - priorityq_deinit
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - i_panic
                - t_strdup_printf
                - i_panic
        - Branch String:   'ioloop.c:933,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:934,33'
              BranchSideFuncs:
                - t_strdup_printf
                - i_warning
                - io_wait_timer_remove
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - i_panic
            - BranchSide:      'ioloop.c:948,6'
              BranchSideFuncs:
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
        - Branch String:   'ioloop.c:940,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:941,18'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:943,20'
              BranchSideFuncs:
                - i_warning
                - io_wait_timer_remove
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - backtrace_get
                - i_warning
                - t_strdup_printf
                - i_panic
        - Branch String:   'ioloop.c:948,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:950,7'
              BranchSideFuncs:
                - backtrace_get
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
                - i_warning
            - BranchSide:      'ioloop.c:954,6'
              BranchSideFuncs:
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
        - Branch String:   'ioloop.c:950,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:951,45'
              BranchSideFuncs:
                - i_warning
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
            - BranchSide:      'ioloop.c:952,2'
              BranchSideFuncs:
                - p_free_internal.7075
                - io_loop_context_unref
                - io_loop_handler_deinit
        - Branch String:   'ioloop.c:954,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:955,26'
              BranchSideFuncs:
                - io_loop_handler_deinit
                - p_free_internal.7075
                - io_loop_context_unref
            - BranchSide:      'ioloop.c:956,6'
              BranchSideFuncs:
                - p_free_internal.7075
                - io_loop_context_unref
        - Branch String:   'ioloop.c:956,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:957,26'
              BranchSideFuncs:
                - io_loop_context_unref
                - p_free_internal.7075
            - BranchSide:      'ioloop.c:958,2'
              BranchSideFuncs:
                - p_free_internal.7075
      Callsites:
        - Src:             'ioloop.c:871,9'
          Dst:             i_panic
        - Src:             'ioloop.c:872,6'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:874,3'
          Dst:             i_memcpy
        - Src:             'ioloop.c:874,55'
          Dst:             t_push
        - Src:             'ioloop.c:876,5'
          Dst:             t_pop
        - Src:             'ioloop.c:876,5'
          Dst:             i_panic
        - Src:             'ioloop.c:879,2'
          Dst:             io_loop_set_current
        - Src:             'ioloop.c:882,3'
          Dst:             io_loop_notify_handler_deinit
        - Src:             'ioloop.c:887,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:894,4'
          Dst:             i_panic
        - Src:             'ioloop.c:896,4'
          Dst:             i_warning
        - Src:             'ioloop.c:897,3'
          Dst:             io_remove
        - Src:             'ioloop.c:900,2'
          Dst:             i_panic
        - Src:             'ioloop.c:902,2'
          Dst:             i_memcpy
        - Src:             'ioloop.c:903,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:909,4'
          Dst:             i_panic
        - Src:             'ioloop.c:911,4'
          Dst:             i_warning
        - Src:             'ioloop.c:912,3'
          Dst:             timeout_free
        - Src:             'ioloop.c:915,2'
          Dst:             array_free_i
        - Src:             'ioloop.c:917,17'
          Dst:             priorityq_pop
        - Src:             'ioloop.c:919,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:925,4'
          Dst:             i_panic
        - Src:             'ioloop.c:927,4'
          Dst:             i_warning
        - Src:             'ioloop.c:928,3'
          Dst:             timeout_free
        - Src:             'ioloop.c:931,2'
          Dst:             priorityq_deinit
        - Src:             'ioloop.c:935,23'
          Dst:             t_strdup_printf
        - Src:             'ioloop.c:941,4'
          Dst:             i_panic
        - Src:             'ioloop.c:943,4'
          Dst:             i_warning
        - Src:             'ioloop.c:944,3'
          Dst:             io_wait_timer_remove
        - Src:             'ioloop.c:950,7'
          Dst:             backtrace_get
        - Src:             'ioloop.c:951,4'
          Dst:             i_warning
        - Src:             'ioloop.c:955,3'
          Dst:             io_loop_handler_deinit
        - Src:             'ioloop.c:957,3'
          Dst:             io_loop_context_unref
        - Src:             'ioloop.c:958,2'
          Dst:             p_free_internal
    - functionName:    io_loop_set_current
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 991
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         21
      ICount:          113
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - array_is_created_i
        - i_memcpy
        - i_panic
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:982,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:983,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:985,19'
              BranchSideFuncs:
                - array_is_created_i.7097
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7103
        - Branch String:   'ioloop.c:986,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:986,6'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7103
            - BranchSide:      'ioloop.c:987,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7103
        - Branch String:   'ioloop.c:987,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:987,3'
              BranchSideFuncs:
                - i_memcpy.7103
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'ioloop.c:987,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7103
                - i_panic
        - Branch String:   'ioloop.c:987,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:987,54'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7103
                - i_panic
            - BranchSide:      'ioloop.c:990,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:989,5'
          Branch Sides:
            - BranchSide:      'ioloop.c:989,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:989,5'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7103
      Callsites:
        - Src:             'ioloop.c:986,6'
          Dst:             array_is_created_i
        - Src:             'ioloop.c:987,3'
          Dst:             i_memcpy
        - Src:             'ioloop.c:987,54'
          Dst:             t_push
        - Src:             'ioloop.c:989,5'
          Dst:             t_pop
        - Src:             'ioloop.c:989,5'
          Dst:             i_panic
    - functionName:    io_loop_default_time_moved
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - old_time
        - new_time
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_warning
        - timeval_diff_usecs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:571,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:571,6'
              BranchSideFuncs:
                - i_warning
            - BranchSide:      'ioloop.c:573,6'
              BranchSideFuncs:
                - i_warning
      Callsites:
        - Src:             'ioloop.c:570,19'
          Dst:             timeval_diff_usecs
        - Src:             'ioloop.c:572,3'
          Dst:             i_warning
    - functionName:    timeout_cmp
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - p1
        - p2
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeval_cmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:563,9'
          Dst:             timeval_cmp
    - functionName:    io_loop_create
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 836
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_create_i
        - getenv
        - i_gettimeofday
        - io_loop_set_current
        - malloc_multiply_check
        - p_malloc
        - priorityq_init
        - timeout_cmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:839,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:837,17'
              BranchSideFuncs:
                - getenv
                - i_gettimeofday
                - malloc_multiply_check.7060
                - p_malloc.7061
                - priorityq_init
                - array_create_i.7101
                - io_loop_set_current
            - BranchSide:      'ioloop.c:839,7'
              BranchSideFuncs:
                - getenv
                - i_gettimeofday
                - malloc_multiply_check.7060
                - p_malloc.7061
                - priorityq_init
                - array_create_i.7101
                - io_loop_set_current
        - Branch String:   'ioloop.c:839,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:840,21'
              BranchSideFuncs:
                - i_gettimeofday
                - malloc_multiply_check.7060
                - p_malloc.7061
                - priorityq_init
                - array_create_i.7101
                - io_loop_set_current
            - BranchSide:      'ioloop.c:845,2'
              BranchSideFuncs:
                - i_gettimeofday
                - malloc_multiply_check.7060
                - p_malloc.7061
                - priorityq_init
                - array_create_i.7101
                - io_loop_set_current
        - Branch String:   'ioloop.c:852,32'
          Branch Sides:
            - BranchSide:      'ioloop.c:852,32'
              BranchSideFuncs:
                - io_loop_set_current
            - BranchSide:      'ioloop.c:853,3'
              BranchSideFuncs:
                - io_loop_set_current
      Callsites:
        - Src:             'ioloop.c:841,19'
          Dst:             getenv
        - Src:             'ioloop.c:845,2'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:848,18'
          Dst:             malloc_multiply_check
        - Src:             'ioloop.c:848,18'
          Dst:             p_malloc
        - Src:             'ioloop.c:849,21'
          Dst:             priorityq_init
        - Src:             'ioloop.c:849,21'
          Dst:             timeout_cmp
        - Src:             'ioloop.c:850,2'
          Dst:             array_create_i
        - Src:             'ioloop.c:857,9'
          Dst:             io_loop_set_current
    - functionName:    io_loop_time_refresh
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_gettimeofday
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:831,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:831,2'
              BranchSideFuncs:
                - i_gettimeofday
            - BranchSide:      'ioloop.c:831,2'
              BranchSideFuncs:
                - i_gettimeofday
      Callsites:
        - Src:             'ioloop.c:831,2'
          Dst:             i_gettimeofday
    - functionName:    io_loop_is_running
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 825
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_set_max_fd_count
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 820
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ioloop
        - max_fds
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_set_running
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_stop_delayed
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 810
      functionLinenumberEnd: 812
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_stop
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 807
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_call_pending
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         16
      ICount:          81
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - io_loop_call_io
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:776,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:777,8'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:787,1'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:780,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:781,22'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:782,8'
              BranchSideFuncs:
                - io_loop_call_io
        - Branch String:   'ioloop.c:782,8'
          Branch Sides:
            - BranchSide:      'ioloop.c:783,5'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:784,9'
              BranchSideFuncs:
                - io_loop_call_io
        - Branch String:   'ioloop.c:785,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:776,2'
              BranchSideFuncs:
                - io_loop_call_io
            - BranchSide:      'ioloop.c:779,27'
              BranchSideFuncs:
                - io_loop_call_io
      Callsites:
        - Src:             'ioloop.c:781,5'
          Dst:             io_loop_call_io
    - functionName:    io_loop_call_io
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - io
      BBCount:         22
      ICount:          140
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - io_loop_context_activate
        - io_loop_context_deactivate
        - t_pop
        - t_push_named
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:733,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:734,3'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - i_panic
            - BranchSide:      'ioloop.c:739,6'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
        - Branch String:   'ioloop.c:734,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:734,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:735,3'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
        - Branch String:   'ioloop.c:739,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:740,28'
              BranchSideFuncs:
                - io_loop_context_activate
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:742,16'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:744,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:746,12'
              BranchSideFuncs:
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:748,6'
              BranchSideFuncs:
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:748,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:749,30'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - i_panic
            - BranchSide:      'ioloop.c:750,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:750,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:750,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:750,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:734,3'
          Dst:             i_panic
        - Src:             'ioloop.c:740,3'
          Dst:             io_loop_context_activate
        - Src:             'ioloop.c:741,9'
          Dst:             t_push_named
        - Src:             'ioloop.c:744,7'
          Dst:             t_pop
        - Src:             'ioloop.c:745,3'
          Dst:             i_panic
        - Src:             'ioloop.c:749,3'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:750,2'
          Dst:             i_panic
    - functionName:    io_loop_timeouts_start_new
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         28
      ICount:          171
      EdgeCount:       32
      CyclomaticComplexity: 6
      functionsReached:
        - array_clear_i
        - array_count_i
        - i_memcpy
        - i_panic
        - io_loop_time_refresh
        - priorityq_add
        - timeout_update_next
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:581,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:582,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:584,2'
              BranchSideFuncs:
                - io_loop_time_refresh
                - array_clear_i.7048
                - timeout_update_next
                - priorityq_add
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.7103
        - Branch String:   'ioloop.c:586,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:586,2'
              BranchSideFuncs:
                - i_memcpy.7103
                - array_clear_i.7048
                - timeout_update_next
                - priorityq_add
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:586,2'
              BranchSideFuncs:
                - array_clear_i.7048
                - timeout_update_next
                - priorityq_add
                - i_memcpy.7103
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:586,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:587,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.7048
                - i_memcpy.7103
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:594,2'
              BranchSideFuncs:
                - array_clear_i.7048
        - Branch String:   'ioloop.c:587,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:587,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.7048
                - i_memcpy.7103
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ioloop.c:587,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.7048
                - i_memcpy.7103
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:587,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:587,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:589,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.7048
                - i_panic
                - i_memcpy.7103
                - i_panic
                - i_panic
        - Branch String:   'ioloop.c:589,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:589,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:590,3'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.7048
                - i_panic
                - i_panic
                - i_memcpy.7103
                - i_panic
        - Branch String:   'ioloop.c:590,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:590,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:591,23'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
                - array_clear_i.7048
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.7103
      Callsites:
        - Src:             'ioloop.c:581,6'
          Dst:             array_count_i
        - Src:             'ioloop.c:584,2'
          Dst:             io_loop_time_refresh
        - Src:             'ioloop.c:586,2'
          Dst:             i_memcpy
        - Src:             'ioloop.c:587,3'
          Dst:             i_panic
        - Src:             'ioloop.c:589,3'
          Dst:             i_panic
        - Src:             'ioloop.c:590,3'
          Dst:             i_panic
        - Src:             'ioloop.c:591,3'
          Dst:             timeout_update_next
        - Src:             'ioloop.c:592,3'
          Dst:             priorityq_add
        - Src:             'ioloop.c:594,2'
          Dst:             array_clear_i
    - functionName:    timeout_update_next
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - timeout
        - tv_now
      BBCount:         9
      ICount:          106
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_gettimeofday
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ioloop.c:242,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:243,19'
              BranchSideFuncs:
                - i_gettimeofday
            - BranchSide:      'ioloop.c:245,30'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:256,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:256,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:257,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:243,3'
          Dst:             i_gettimeofday
    - functionName:    io_loop_handler_run
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         14
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - io_loop_call_pending
        - io_loop_handler_run_internal
        - io_loop_stop
        - io_loop_timeouts_start_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:791,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:791,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:793,29'
              BranchSideFuncs:
                - io_loop_timeouts_start_new
                - io_loop_handler_run_internal
                - io_loop_call_pending
                - i_panic
                - io_loop_stop
        - Branch String:   'ioloop.c:797,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:798,16'
              BranchSideFuncs:
                - io_loop_stop
                - i_panic
            - BranchSide:      'ioloop.c:800,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop.c:800,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:800,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:800,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:791,2'
          Dst:             i_panic
        - Src:             'ioloop.c:793,2'
          Dst:             io_loop_timeouts_start_new
        - Src:             'ioloop.c:795,2'
          Dst:             io_loop_handler_run_internal
        - Src:             'ioloop.c:796,2'
          Dst:             io_loop_call_pending
        - Src:             'ioloop.c:798,3'
          Dst:             io_loop_stop
        - Src:             'ioloop.c:800,2'
          Dst:             i_panic
    - functionName:    io_loop_run
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         16
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - io_loop_context_deactivate
        - io_loop_handler_run
        - io_loop_initialize_handler
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:755,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:756,30'
              BranchSideFuncs:
                - io_loop_initialize_handler
                - io_loop_handler_run
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:758,6'
              BranchSideFuncs:
                - io_loop_handler_run
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:758,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:759,30'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - io_loop_handler_run
                - i_panic
            - BranchSide:      'ioloop.c:763,2'
              BranchSideFuncs:
                - io_loop_handler_run
                - i_panic
        - Branch String:   'ioloop.c:763,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:763,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:764,2'
              BranchSideFuncs:
                - io_loop_handler_run
        - Branch String:   'ioloop.c:767,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:768,23'
              BranchSideFuncs:
                - io_loop_handler_run
            - BranchSide:      'ioloop.c:769,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:756,3'
          Dst:             io_loop_initialize_handler
        - Src:             'ioloop.c:759,3'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:763,2'
          Dst:             i_panic
        - Src:             'ioloop.c:768,3'
          Dst:             io_loop_handler_run
    - functionName:    io_loop_handle_timeouts_real
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         41
      ICount:          278
      EdgeCount:       49
      CyclomaticComplexity: 10
      functionsReached:
        - i_gettimeofday
        - i_panic
        - io_loop_context_activate
        - io_loop_context_deactivate
        - io_loops_timeouts_update
        - ioloop_add_wait_time
        - priorityq_peek
        - priorityq_remove
        - t_pop
        - t_push_named
        - timeout_get_wait_time
        - timeout_reset_timeval
        - timeval_diff_usecs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:651,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:653,28'
              BranchSideFuncs:
                - io_loops_timeouts_update
                - i_gettimeofday
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - i_panic
            - BranchSide:      'ioloop.c:659,18'
              BranchSideFuncs:
                - timeval_diff_usecs
                - ioloop_add_wait_time
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - io_loops_timeouts_update
                - i_panic
        - Branch String:   'ioloop.c:655,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:655,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:657,3'
              BranchSideFuncs:
                - i_gettimeofday
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
        - Branch String:   'ioloop.c:665,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:666,30'
              BranchSideFuncs:
                - io_loops_timeouts_update
                - ioloop_add_wait_time
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - i_panic
            - BranchSide:      'ioloop.c:672,24'
              BranchSideFuncs:
                - ioloop_add_wait_time
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
        - Branch String:   'ioloop.c:670,4'
          Branch Sides:
            - BranchSide:      'ioloop.c:670,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:671,3'
              BranchSideFuncs:
                - ioloop_add_wait_time
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
        - Branch String:   'ioloop.c:678,25'
          Branch Sides:
            - BranchSide:      'ioloop.c:678,2'
              BranchSideFuncs:
                - priorityq_peek
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
            - BranchSide:      'ioloop.c:679,32'
              BranchSideFuncs:
                - priorityq_peek
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
        - Branch String:   'ioloop.c:678,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:678,2'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
            - BranchSide:      'ioloop.c:680,47'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
        - Branch String:   'ioloop.c:684,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:685,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:687,7'
              BranchSideFuncs:
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - timeout_get_wait_time
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
        - Branch String:   'ioloop.c:687,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:689,21'
              BranchSideFuncs:
                - priorityq_remove
                - t_push_named
                - t_pop
                - i_panic
                - timeout_get_wait_time
                - timeout_reset_timeval
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
            - BranchSide:      'ioloop.c:692,26'
              BranchSideFuncs:
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - timeout_get_wait_time
                - priorityq_remove
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
        - Branch String:   'ioloop.c:695,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:696,29'
              BranchSideFuncs:
                - io_loop_context_activate
                - t_push_named
                - t_pop
                - i_panic
                - timeout_get_wait_time
                - timeout_reset_timeval
                - priorityq_remove
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:698,17'
              BranchSideFuncs:
                - t_push_named
                - t_pop
                - i_panic
                - timeout_get_wait_time
                - timeout_reset_timeval
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:700,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:702,13'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
            - BranchSide:      'ioloop.c:704,7'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - i_panic
                - io_loop_context_deactivate
        - Branch String:   'ioloop.c:704,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:705,31'
              BranchSideFuncs:
                - io_loop_context_deactivate
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - i_panic
            - BranchSide:      'ioloop.c:706,3'
              BranchSideFuncs:
                - timeout_get_wait_time
                - timeout_reset_timeval
                - t_push_named
                - t_pop
                - i_panic
                - io_loop_context_deactivate
                - io_loop_context_activate
                - priorityq_remove
                - priorityq_peek
                - i_panic
        - Branch String:   'ioloop.c:706,3'
          Branch Sides:
            - BranchSide:      'ioloop.c:678,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:706,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'ioloop.c:648,2'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:650,15'
          Dst:             timeval_diff_usecs
        - Src:             'ioloop.c:653,3'
          Dst:             io_loops_timeouts_update
        - Src:             'ioloop.c:655,3'
          Dst:             i_panic
        - Src:             'ioloop.c:657,3'
          Dst:             i_gettimeofday
        - Src:             'ioloop.c:663,16'
          Dst:             timeval_diff_usecs
        - Src:             'ioloop.c:666,4'
          Dst:             io_loops_timeouts_update
        - Src:             'ioloop.c:670,4'
          Dst:             i_panic
        - Src:             'ioloop.c:672,3'
          Dst:             ioloop_add_wait_time
        - Src:             'ioloop.c:679,17'
          Dst:             priorityq_peek
        - Src:             'ioloop.c:684,7'
          Dst:             timeout_get_wait_time
        - Src:             'ioloop.c:689,4'
          Dst:             priorityq_remove
        - Src:             'ioloop.c:692,4'
          Dst:             timeout_reset_timeval
        - Src:             'ioloop.c:696,4'
          Dst:             io_loop_context_activate
        - Src:             'ioloop.c:697,10'
          Dst:             t_push_named
        - Src:             'ioloop.c:700,8'
          Dst:             t_pop
        - Src:             'ioloop.c:701,4'
          Dst:             i_panic
        - Src:             'ioloop.c:705,4'
          Dst:             io_loop_context_deactivate
        - Src:             'ioloop.c:706,3'
          Dst:             i_panic
    - functionName:    timeout_reset_timeval
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - timeout
        - tv_now
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - priorityq_add
        - priorityq_remove
        - timeout_update_next
        - timeval_add_usecs
        - timeval_cmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:428,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:429,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:431,22'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_remove
                - priorityq_add
                - timeval_cmp
                - timeval_add_usecs
        - Branch String:   'ioloop.c:441,21'
          Branch Sides:
            - BranchSide:      'ioloop.c:441,37'
              BranchSideFuncs:
                - timeval_cmp
                - priorityq_remove
                - priorityq_add
                - timeval_add_usecs
            - BranchSide:      'ioloop.c:445,19'
              BranchSideFuncs:
                - priorityq_remove
                - priorityq_add
        - Branch String:   'ioloop.c:441,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:442,3'
              BranchSideFuncs:
                - timeval_add_usecs
                - priorityq_remove
                - priorityq_add
            - BranchSide:      'ioloop.c:445,19'
              BranchSideFuncs:
                - priorityq_remove
                - priorityq_add
      Callsites:
        - Src:             'ioloop.c:431,2'
          Dst:             timeout_update_next
        - Src:             'ioloop.c:441,24'
          Dst:             timeval_cmp
        - Src:             'ioloop.c:443,3'
          Dst:             timeval_add_usecs
        - Src:             'ioloop.c:445,2'
          Dst:             priorityq_remove
        - Src:             'ioloop.c:446,2'
          Dst:             priorityq_add
    - functionName:    io_loop_handle_timeouts
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         15
      ICount:          62
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - data_stack_free_unused
        - i_panic
        - io_loop_handle_timeouts_real
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:714,4'
          Branch Sides:
            - BranchSide:      'ioloop.c:714,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:714,4'
              BranchSideFuncs:
                - data_stack_free_unused
        - Branch String:   'ioloop.c:721,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:721,6'
              BranchSideFuncs:
                - data_stack_free_unused
            - BranchSide:      'ioloop.c:722,7'
              BranchSideFuncs:
                - data_stack_free_unused
        - Branch String:   'ioloop.c:722,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:723,4'
              BranchSideFuncs:
                - data_stack_free_unused
            - BranchSide:      'ioloop.c:724,33'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop.c:712,2'
          Dst:             t_push
        - Src:             'ioloop.c:713,3'
          Dst:             io_loop_handle_timeouts_real
        - Src:             'ioloop.c:714,4'
          Dst:             t_pop
        - Src:             'ioloop.c:714,4'
          Dst:             i_panic
        - Src:             'ioloop.c:723,4'
          Dst:             data_stack_free_unused
    - functionName:    io_loop_have_waitable_io_files
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         11
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:544,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:545,7'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:548,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:545,31'
          Branch Sides:
            - BranchSide:      'ioloop.c:545,35'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:547,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:545,7'
          Branch Sides:
            - BranchSide:      'ioloop.c:546,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:547,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_loop_run_get_wait_time
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 552
      functionLinenumberEnd: 556
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - tv_r
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - io_loop_get_wait_time
        - io_loop_have_waitable_io_files
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop.c:554,16'
          Branch Sides:
            - BranchSide:      'ioloop.c:554,51'
              BranchSideFuncs:
                - io_loop_have_waitable_io_files
                - i_panic
            - BranchSide:      'ioloop.c:554,16'
              BranchSideFuncs: []
        - Branch String:   'ioloop.c:554,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:554,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:555,3'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             'ioloop.c:553,14'
          Dst:             io_loop_get_wait_time
        - Src:             'ioloop.c:554,20'
          Dst:             io_loop_have_waitable_io_files
        - Src:             'ioloop.c:555,3'
          Dst:             i_panic
    - functionName:    timeout_reset
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - timeout
      BBCount:         7
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - timeout_reset_timeval
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop.c:451,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:451,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:451,2'
              BranchSideFuncs:
                - timeout_reset_timeval
      Callsites:
        - Src:             'ioloop.c:451,2'
          Dst:             i_panic
        - Src:             'ioloop.c:452,2'
          Dst:             timeout_reset_timeval
    - functionName:    timeout_add_absolute
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - time
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeout_add_absolute_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:368,9'
          Dst:             timeout_add_absolute_to
    - functionName:    timeout_add_absolute_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - time
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - priorityq_add
        - timeout_add_common
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:352,12'
          Dst:             timeout_add_common
        - Src:             'ioloop.c:357,2'
          Dst:             priorityq_add
    - functionName:    timeout_add_short
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - msecs
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeout_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:339,9'
          Dst:             timeout_add
    - functionName:    timeout_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - msecs
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeout_add_to
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:317,9'
          Dst:             timeout_add_to
    - functionName:    timeout_add_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - msecs
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - priorityq_add
        - timeout_add_common
        - timeout_update_next
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ioloop.c:298,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:300,3'
              BranchSideFuncs:
                - array_append_i.7080
            - BranchSide:      'ioloop.c:305,23'
              BranchSideFuncs:
                - timeout_update_next
                - priorityq_add
      Callsites:
        - Src:             'ioloop.c:294,12'
          Dst:             timeout_add_common
        - Src:             'ioloop.c:300,3'
          Dst:             array_append_i
        - Src:             'ioloop.c:305,3'
          Dst:             timeout_update_next
        - Src:             'ioloop.c:307,3'
          Dst:             priorityq_add
    - functionName:    timeout_add_short_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - msecs
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeout_add_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:328,9'
          Dst:             timeout_add_to
    - functionName:    io_set_never_wait_alone
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - io
        - set
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_is_pending
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - io
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_remove_closed
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - io
      BBCount:         10
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - io_remove_full
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop.c:212,6'
          Branch Sides:
            - BranchSide:      'ioloop.c:213,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop.c:215,2'
              BranchSideFuncs:
                - io_remove_full
                - i_panic
        - Branch String:   'ioloop.c:215,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:215,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:217,17'
              BranchSideFuncs:
                - io_remove_full
      Callsites:
        - Src:             'ioloop.c:215,2'
          Dst:             i_panic
        - Src:             'ioloop.c:217,2'
          Dst:             io_remove_full
    - functionName:    io_add_istream
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_add_istream_to
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:137,9'
          Dst:             io_add_istream_to
    - functionName:    io_add_istream_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - input
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_stream_get_fd
        - i_stream_ref
        - i_stream_set_io
        - io_add_file
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:124,27'
          Dst:             i_stream_get_fd
        - Src:             'ioloop.c:124,7'
          Dst:             io_add_file
        - Src:             'ioloop.c:127,2'
          Dst:             i_stream_ref
        - Src:             'ioloop.c:128,2'
          Dst:             i_stream_set_io
    - functionName:    io_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - condition
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_add_to
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ioloop.c:111,9'
          Dst:             io_add_to
    - functionName:    io_add_to
      functionSourceFile: '/src/dovecot/src/lib/ioloop.c'
      linkageType:     externalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
        - fd
        - condition
        - source_filename
        - source_linenum
        - callback
        - context
      BBCount:         7
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - io_add_file
      functionUses:    8
      BranchProfiles:
        - Branch String:   'ioloop.c:98,2'
          Branch Sides:
            - BranchSide:      'ioloop.c:98,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop.c:98,2'
              BranchSideFuncs:
                - io_add_file
      Callsites:
        - Src:             'ioloop.c:98,2'
          Dst:             i_panic
        - Src:             'ioloop.c:99,7'
          Dst:             io_add_file
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    inotify_input_more
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         30
      ICount:          179
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - i_error
        - i_fatal
        - i_gettimeofday
        - i_panic
        - io_loop_call_io
        - io_notify_fd_find
        - read
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:46,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:47,7'
              BranchSideFuncs:
                - __errno_location
                - i_fatal
            - BranchSide:      'ioloop-notify-inotify.c:54,2'
              BranchSideFuncs:
                - i_gettimeofday
                - i_error
                - io_notify_fd_find
                - io_loop_call_io
                - i_panic
        - Branch String:   'ioloop-notify-inotify.c:47,16'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:47,19'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-inotify.c:49,4'
              BranchSideFuncs: []
        - Branch String:   'ioloop-notify-inotify.c:47,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:49,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-inotify.c:51,3'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'ioloop-notify-inotify.c:57,2'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:58,16'
              BranchSideFuncs:
                - io_notify_fd_find
                - i_error
                - io_loop_call_io
                - i_panic
            - BranchSide:      'ioloop-notify-inotify.c:75,6'
              BranchSideFuncs:
                - i_error
        - Branch String:   'ioloop-notify-inotify.c:58,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:59,4'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:61,36'
              BranchSideFuncs:
                - io_notify_fd_find
                - i_error
                - io_loop_call_io
                - i_panic
        - Branch String:   'ioloop-notify-inotify.c:62,3'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:62,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop-notify-inotify.c:63,27'
              BranchSideFuncs:
                - io_notify_fd_find
                - i_error
                - i_panic
                - io_loop_call_io
        - Branch String:   'ioloop-notify-inotify.c:66,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:57,2'
              BranchSideFuncs:
                - io_loop_call_io
                - i_error
                - io_notify_fd_find
                - i_panic
            - BranchSide:      'ioloop-notify-inotify.c:67,9'
              BranchSideFuncs:
                - io_loop_call_io
                - i_error
                - io_notify_fd_find
                - i_panic
        - Branch String:   'ioloop-notify-inotify.c:67,8'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:70,5'
              BranchSideFuncs:
                - io_loop_call_io
                - i_error
                - io_notify_fd_find
                - i_panic
            - BranchSide:      'ioloop-notify-inotify.c:72,21'
              BranchSideFuncs:
                - io_loop_call_io
                - i_error
                - io_notify_fd_find
                - i_panic
        - Branch String:   'ioloop-notify-inotify.c:75,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:76,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:77,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop-notify-inotify.c:45,8'
          Dst:             read
        - Src:             'ioloop-notify-inotify.c:47,19'
          Dst:             __errno_location
        - Src:             'ioloop-notify-inotify.c:51,3'
          Dst:             i_fatal
        - Src:             'ioloop-notify-inotify.c:54,2'
          Dst:             i_gettimeofday
        - Src:             'ioloop-notify-inotify.c:62,3'
          Dst:             i_panic
        - Src:             'ioloop-notify-inotify.c:65,8'
          Dst:             io_notify_fd_find
        - Src:             'ioloop-notify-inotify.c:72,4'
          Dst:             io_loop_call_io
        - Src:             'ioloop-notify-inotify.c:76,3'
          Dst:             i_error
    - functionName:    ioloop_inotify_user_limit_exceeded
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dec2str
        - geteuid
        - i_getpwuid
        - i_warning
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:157,14'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:155,16'
              BranchSideFuncs:
                - geteuid
                - i_getpwuid
                - dec2str
                - t_strdup_printf
                - i_warning
                - dec2str
                - t_strdup_printf
            - BranchSide:      'ioloop-notify-inotify.c:157,14'
              BranchSideFuncs:
                - geteuid
                - i_getpwuid
                - dec2str
                - t_strdup_printf
                - i_warning
                - dec2str
                - t_strdup_printf
        - Branch String:   'ioloop-notify-inotify.c:159,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:160,44'
              BranchSideFuncs:
                - dec2str
                - t_strdup_printf
                - i_warning
            - BranchSide:      'ioloop-notify-inotify.c:163,20'
              BranchSideFuncs:
                - dec2str
                - t_strdup_printf
                - i_warning
      Callsites:
        - Src:             'ioloop-notify-inotify.c:157,14'
          Dst:             geteuid
        - Src:             'ioloop-notify-inotify.c:159,6'
          Dst:             i_getpwuid
        - Src:             'ioloop-notify-inotify.c:160,36'
          Dst:             dec2str
        - Src:             'ioloop-notify-inotify.c:160,10'
          Dst:             t_strdup_printf
        - Src:             'ioloop-notify-inotify.c:163,12'
          Dst:             dec2str
        - Src:             'ioloop-notify-inotify.c:162,10'
          Dst:             t_strdup_printf
        - Src:             'ioloop-notify-inotify.c:165,2'
          Dst:             i_warning
    - functionName:    io_loop_extract_notify_fd
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     externalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - i_error
        - inotify_init
        - io_remove
        - ioloop_inotify_user_limit_exceeded
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:218,18'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:218,21'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-inotify.c:219,3'
              BranchSideFuncs: []
        - Branch String:   'ioloop-notify-inotify.c:218,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:219,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-inotify.c:221,19'
              BranchSideFuncs:
                - inotify_init
                - io_remove
                - __errno_location
                - ioloop_inotify_user_limit_exceeded
                - i_error
        - Branch String:   'ioloop-notify-inotify.c:222,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:223,7'
              BranchSideFuncs:
                - __errno_location
                - ioloop_inotify_user_limit_exceeded
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:229,12'
              BranchSideFuncs:
                - io_remove
        - Branch String:   'ioloop-notify-inotify.c:223,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:224,4'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:226,4'
              BranchSideFuncs:
                - ioloop_inotify_user_limit_exceeded
        - Branch String:   'ioloop-notify-inotify.c:229,2'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:230,3'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'ioloop-notify-inotify.c:231,13'
              BranchSideFuncs:
                - io_remove
      Callsites:
        - Src:             'ioloop-notify-inotify.c:221,19'
          Dst:             inotify_init
        - Src:             'ioloop-notify-inotify.c:223,7'
          Dst:             __errno_location
        - Src:             'ioloop-notify-inotify.c:224,4'
          Dst:             i_error
        - Src:             'ioloop-notify-inotify.c:226,4'
          Dst:             ioloop_inotify_user_limit_exceeded
        - Src:             'ioloop-notify-inotify.c:231,2'
          Dst:             io_remove
    - functionName:    inotify_init
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_loop_notify_handler_deinit
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     externalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         8
      ICount:          69
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_close_fd_path
        - i_warning
        - io_remove
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:196,2'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:197,26'
              BranchSideFuncs:
                - i_warning
                - io_remove
                - i_close_fd_path
                - p_free_internal.7197
            - BranchSide:      'ioloop-notify-inotify.c:207,2'
              BranchSideFuncs:
                - i_close_fd_path
                - p_free_internal.7197
      Callsites:
        - Src:             'ioloop-notify-inotify.c:200,3'
          Dst:             i_warning
        - Src:             'ioloop-notify-inotify.c:204,3'
          Dst:             io_remove
        - Src:             'ioloop-notify-inotify.c:207,2'
          Dst:             i_close_fd_path
        - Src:             'ioloop-notify-inotify.c:208,2'
          Dst:             p_free_internal
    - functionName:    io_loop_notify_remove
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     externalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _io
      BBCount:         16
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - i_error
        - inotify_rm_watch
        - io_notify_fd_free
        - io_remove
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:139,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:142,24'
              BranchSideFuncs:
                - inotify_rm_watch
                - io_notify_fd_free
                - io_remove
                - __errno_location
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:147,21'
              BranchSideFuncs:
                - io_notify_fd_free
                - io_remove
        - Branch String:   'ioloop-notify-inotify.c:142,53'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:143,7'
              BranchSideFuncs:
                - __errno_location
                - io_notify_fd_free
                - io_remove
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:145,2'
              BranchSideFuncs:
                - io_notify_fd_free
                - io_remove
        - Branch String:   'ioloop-notify-inotify.c:142,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:144,4'
              BranchSideFuncs:
                - i_error
                - io_notify_fd_free
                - io_remove
            - BranchSide:      'ioloop-notify-inotify.c:145,2'
              BranchSideFuncs:
                - io_notify_fd_free
                - io_remove
        - Branch String:   'ioloop-notify-inotify.c:149,35'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:149,38'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'ioloop-notify-inotify.c:149,35'
              BranchSideFuncs: []
        - Branch String:   'ioloop-notify-inotify.c:149,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:149,6'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'ioloop-notify-inotify.c:150,14'
              BranchSideFuncs:
                - io_remove
      Callsites:
        - Src:             'ioloop-notify-inotify.c:142,7'
          Dst:             inotify_rm_watch
        - Src:             'ioloop-notify-inotify.c:143,7'
          Dst:             __errno_location
        - Src:             'ioloop-notify-inotify.c:144,4'
          Dst:             i_error
        - Src:             'ioloop-notify-inotify.c:147,2'
          Dst:             io_notify_fd_free
        - Src:             'ioloop-notify-inotify.c:150,3'
          Dst:             io_remove
    - functionName:    inotify_rm_watch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inotify_input
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - inotify_input_more
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:82,2'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:82,28'
              BranchSideFuncs:
                - inotify_input_more
            - BranchSide:      'ioloop-notify-inotify.c:83,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop-notify-inotify.c:82,9'
          Dst:             inotify_input_more
    - functionName:    io_loop_notify_handler_init
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - fd_close_on_exec
        - fd_set_nonblock
        - i_error
        - inotify_init
        - ioloop_inotify_user_limit_exceeded
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:171,26'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:171,17'
              BranchSideFuncs:
                - malloc_multiply_check.7184
                - p_malloc.7186
                - inotify_init
                - fd_close_on_exec
                - fd_set_nonblock
                - __errno_location
                - ioloop_inotify_user_limit_exceeded
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:171,26'
              BranchSideFuncs:
                - malloc_multiply_check.7184
                - p_malloc.7186
                - inotify_init
                - fd_close_on_exec
                - fd_set_nonblock
                - __errno_location
                - ioloop_inotify_user_limit_exceeded
                - i_error
        - Branch String:   'ioloop-notify-inotify.c:178,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:179,7'
              BranchSideFuncs:
                - __errno_location
                - ioloop_inotify_user_limit_exceeded
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:185,20'
              BranchSideFuncs:
                - fd_close_on_exec
                - fd_set_nonblock
        - Branch String:   'ioloop-notify-inotify.c:179,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:180,4'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:182,4'
              BranchSideFuncs:
                - ioloop_inotify_user_limit_exceeded
      Callsites:
        - Src:             'ioloop-notify-inotify.c:175,3'
          Dst:             malloc_multiply_check
        - Src:             'ioloop-notify-inotify.c:175,3'
          Dst:             p_malloc
        - Src:             'ioloop-notify-inotify.c:177,20'
          Dst:             inotify_init
        - Src:             'ioloop-notify-inotify.c:179,7'
          Dst:             __errno_location
        - Src:             'ioloop-notify-inotify.c:180,4'
          Dst:             i_error
        - Src:             'ioloop-notify-inotify.c:182,4'
          Dst:             ioloop_inotify_user_limit_exceeded
        - Src:             'ioloop-notify-inotify.c:185,3'
          Dst:             fd_close_on_exec
        - Src:             'ioloop-notify-inotify.c:186,3'
          Dst:             fd_set_nonblock
    - functionName:    io_add_notify
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-inotify.c'
      linkageType:     externalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - source_filename
        - source_linenum
        - callback
        - context
        - io_r
      BBCount:         22
      ICount:          156
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - i_error
        - i_warning
        - inotify_add_watch
        - inotify_input
        - io_add
        - io_loop_notify_handler_init
        - io_notify_fd_add
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ioloop-notify-inotify.c:97,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:98,9'
              BranchSideFuncs:
                - io_loop_notify_handler_init
                - inotify_add_watch
                - io_notify_fd_add
                - io_add
                - __errno_location
                - __errno_location
                - __errno_location
                - i_warning
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:99,6'
              BranchSideFuncs:
                - inotify_add_watch
                - io_notify_fd_add
                - io_add
                - __errno_location
                - __errno_location
                - __errno_location
                - i_warning
                - i_error
        - Branch String:   'ioloop-notify-inotify.c:99,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:100,3'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-inotify.c:102,25'
              BranchSideFuncs:
                - inotify_add_watch
                - io_notify_fd_add
                - io_add
                - __errno_location
                - __errno_location
                - __errno_location
                - i_warning
                - i_error
        - Branch String:   'ioloop-notify-inotify.c:105,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:108,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - i_warning
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:122,6'
              BranchSideFuncs:
                - io_notify_fd_add
                - io_add
        - Branch String:   'ioloop-notify-inotify.c:108,23'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:108,26'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-inotify.c:109,4'
              BranchSideFuncs: []
        - Branch String:   'ioloop-notify-inotify.c:108,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:109,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-inotify.c:111,7'
              BranchSideFuncs:
                - __errno_location
                - i_warning
                - i_error
        - Branch String:   'ioloop-notify-inotify.c:111,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:112,48'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'ioloop-notify-inotify.c:114,4'
              BranchSideFuncs:
                - i_warning
        - Branch String:   'ioloop-notify-inotify.c:122,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-inotify.c:123,19'
              BranchSideFuncs:
                - io_add
                - io_notify_fd_add
            - BranchSide:      'ioloop-notify-inotify.c:127,28'
              BranchSideFuncs:
                - io_notify_fd_add
      Callsites:
        - Src:             'ioloop-notify-inotify.c:98,9'
          Dst:             io_loop_notify_handler_init
        - Src:             'ioloop-notify-inotify.c:102,7'
          Dst:             inotify_add_watch
        - Src:             'ioloop-notify-inotify.c:108,7'
          Dst:             __errno_location
        - Src:             'ioloop-notify-inotify.c:108,26'
          Dst:             __errno_location
        - Src:             'ioloop-notify-inotify.c:111,7'
          Dst:             __errno_location
        - Src:             'ioloop-notify-inotify.c:112,4'
          Dst:             i_error
        - Src:             'ioloop-notify-inotify.c:114,4'
          Dst:             i_warning
        - Src:             'ioloop-notify-inotify.c:123,19'
          Dst:             io_add
        - Src:             'ioloop-notify-inotify.c:123,19'
          Dst:             inotify_input
        - Src:             'ioloop-notify-inotify.c:127,10'
          Dst:             io_notify_fd_add
    - functionName:    inotify_add_watch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:275,2'
          Branch Sides:
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:275,2'
          Dst:             i_panic
    - functionName:    io_loop_handler_run_internal
      functionSourceFile: '/src/dovecot/src/lib/ioloop-epoll.c'
      linkageType:     externalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         52
      ICount:          309
      EdgeCount:       65
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - array_get_modifiable_i
        - array_idx_i
        - epoll_wait
        - i_fatal
        - i_panic
        - i_sleep_intr_msecs
        - io_loop_call_io
        - io_loop_handle_timeouts
        - io_loop_run_get_wait_time
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-epoll.c:176,2'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:176,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop-epoll.c:179,36'
              BranchSideFuncs:
                - io_loop_run_get_wait_time
                - array_get_modifiable_i.7254
                - i_sleep_intr_msecs
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
                - i_panic
                - epoll_wait
                - __errno_location
                - i_fatal
        - Branch String:   'ioloop-epoll.c:182,31'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:182,34'
              BranchSideFuncs:
                - i_sleep_intr_msecs
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
                - i_panic
                - epoll_wait
                - __errno_location
                - i_fatal
            - BranchSide:      'ioloop-epoll.c:189,3'
              BranchSideFuncs:
                - i_sleep_intr_msecs
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
                - i_panic
        - Branch String:   'ioloop-epoll.c:182,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:183,20'
              BranchSideFuncs:
                - epoll_wait
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
                - __errno_location
                - i_fatal
            - BranchSide:      'ioloop-epoll.c:189,3'
              BranchSideFuncs:
                - i_sleep_intr_msecs
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
                - i_panic
        - Branch String:   'ioloop-epoll.c:184,15'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:184,18'
              BranchSideFuncs:
                - __errno_location
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
                - i_fatal
            - BranchSide:      'ioloop-epoll.c:186,2'
              BranchSideFuncs:
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:184,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:185,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'ioloop-epoll.c:186,2'
              BranchSideFuncs:
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:189,3'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:189,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop-epoll.c:190,22'
              BranchSideFuncs:
                - i_sleep_intr_msecs
                - io_loop_handle_timeouts
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:197,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:198,3'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:200,9'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:200,2'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:200,2'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:203,11'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:206,3'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:207,9'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:227,2'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:208,8'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:209,5'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:211,9'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:212,8'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:213,10'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:214,14'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:214,13'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:215,13'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:216,14'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:216,13'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:217,13'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:218,14'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:221,8'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:222,22'
              BranchSideFuncs:
                - io_loop_call_io
                - array_idx_i.7245
            - BranchSide:      'ioloop-epoll.c:226,3'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
        - Branch String:   'ioloop-epoll.c:223,9'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:224,6'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
            - BranchSide:      'ioloop-epoll.c:225,4'
              BranchSideFuncs:
                - array_idx_i.7245
                - io_loop_call_io
      Callsites:
        - Src:             'ioloop-epoll.c:176,2'
          Dst:             i_panic
        - Src:             'ioloop-epoll.c:179,10'
          Dst:             io_loop_run_get_wait_time
        - Src:             'ioloop-epoll.c:181,11'
          Dst:             array_get_modifiable_i
        - Src:             'ioloop-epoll.c:183,9'
          Dst:             epoll_wait
        - Src:             'ioloop-epoll.c:184,18'
          Dst:             __errno_location
        - Src:             'ioloop-epoll.c:185,4'
          Dst:             i_fatal
        - Src:             'ioloop-epoll.c:189,3'
          Dst:             i_panic
        - Src:             'ioloop-epoll.c:190,3'
          Dst:             i_sleep_intr_msecs
        - Src:             'ioloop-epoll.c:195,9'
          Dst:             io_loop_handle_timeouts
        - Src:             'ioloop-epoll.c:203,11'
          Dst:             array_idx_i
        - Src:             'ioloop-epoll.c:222,5'
          Dst:             io_loop_call_io
    - functionName:    array_get_modifiable_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
        - buffer_get_modifiable_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:304,13'
          Dst:             array_count_i
        - Src:             './array.h:305,9'
          Dst:             buffer_get_modifiable_data
    - functionName:    epoll_wait
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    io_loop_handle_remove
      functionSourceFile: '/src/dovecot/src/lib/ioloop-epoll.c'
      linkageType:     externalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - io
        - closed
      BBCount:         20
      ICount:          154
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - array_idx_modifiable_i
        - epoll_ctl
        - epoll_event_mask
        - i_error
        - i_panic
        - ioloop_iolist_del
        - p_free_internal
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-epoll.c:138,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:139,3'
              BranchSideFuncs:
                - p_free_internal.7263
            - BranchSide:      'ioloop-epoll.c:155,6'
              BranchSideFuncs:
                - p_free_internal.7263
        - Branch String:   'ioloop-epoll.c:145,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:148,5'
              BranchSideFuncs:
                - t_strdup_printf
                - __errno_location
                - i_error
                - p_free_internal.7263
                - __errno_location
                - i_panic
            - BranchSide:      'ioloop-epoll.c:154,2'
              BranchSideFuncs:
                - p_free_internal.7263
        - Branch String:   'ioloop-epoll.c:149,24'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:149,27'
              BranchSideFuncs:
                - __errno_location
                - i_error
                - p_free_internal.7263
                - i_panic
            - BranchSide:      'ioloop-epoll.c:152,19'
              BranchSideFuncs:
                - i_error
                - p_free_internal.7263
        - Branch String:   'ioloop-epoll.c:149,8'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:150,19'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop-epoll.c:152,19'
              BranchSideFuncs:
                - i_error
                - p_free_internal.7263
        - Branch String:   'ioloop-epoll.c:155,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:159,3'
              BranchSideFuncs:
                - p_free_internal.7263
            - BranchSide:      'ioloop-epoll.c:161,2'
              BranchSideFuncs:
                - p_free_internal.7263
      Callsites:
        - Src:             'ioloop-epoll.c:135,9'
          Dst:             array_idx_modifiable_i
        - Src:             'ioloop-epoll.c:136,9'
          Dst:             ioloop_iolist_del
        - Src:             'ioloop-epoll.c:141,18'
          Dst:             epoll_event_mask
        - Src:             'ioloop-epoll.c:145,7'
          Dst:             epoll_ctl
        - Src:             'ioloop-epoll.c:146,25'
          Dst:             t_strdup_printf
        - Src:             'ioloop-epoll.c:149,8'
          Dst:             __errno_location
        - Src:             'ioloop-epoll.c:149,27'
          Dst:             __errno_location
        - Src:             'ioloop-epoll.c:150,5'
          Dst:             i_panic
        - Src:             'ioloop-epoll.c:152,5'
          Dst:             i_error
        - Src:             'ioloop-epoll.c:161,2'
          Dst:             p_free_internal
    - functionName:    epoll_event_mask
      functionSourceFile: '/src/dovecot/src/lib/ioloop-epoll.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
      BBCount:         16
      ICount:          100
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ioloop-epoll.c:69,2'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:70,8'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-epoll.c:83,9'
              BranchSideFuncs: []
        - Branch String:   'ioloop-epoll.c:72,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:73,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-epoll.c:75,8'
              BranchSideFuncs: []
        - Branch String:   'ioloop-epoll.c:75,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:76,11'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-epoll.c:77,8'
              BranchSideFuncs: []
        - Branch String:   'ioloop-epoll.c:77,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:78,11'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-epoll.c:79,8'
              BranchSideFuncs: []
        - Branch String:   'ioloop-epoll.c:79,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:80,11'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-epoll.c:81,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    epoll_ctl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    io_loop_handle_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop-epoll.c'
      linkageType:     externalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - io
      BBCount:         19
      ICount:          160
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - array_append_space_i
        - array_idx_get_space_i
        - epoll_ctl
        - epoll_event_mask
        - i_panic
        - ioloop_iolist_add
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-epoll.c:95,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:96,11'
              BranchSideFuncs:
                - malloc_multiply_check.7267
                - p_malloc.7268
                - ioloop_iolist_add
                - epoll_event_mask
                - epoll_ctl
                - array_append_space_i.7264
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'ioloop-epoll.c:98,29'
              BranchSideFuncs:
                - ioloop_iolist_add
                - epoll_event_mask
                - epoll_ctl
                - array_append_space_i.7264
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'ioloop-epoll.c:106,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:107,7'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'ioloop-epoll.c:117,6'
              BranchSideFuncs:
                - array_append_space_i.7264
        - Branch String:   'ioloop-epoll.c:107,22'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:107,25'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ioloop-epoll.c:114,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop-epoll.c:107,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:109,37'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop-epoll.c:114,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop-epoll.c:117,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:117,6'
              BranchSideFuncs:
                - array_append_space_i.7264
            - BranchSide:      'ioloop-epoll.c:120,7'
              BranchSideFuncs:
                - array_append_space_i.7264
        - Branch String:   'ioloop-epoll.c:120,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:121,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-epoll.c:123,4'
              BranchSideFuncs:
                - array_append_space_i.7264
      Callsites:
        - Src:             'ioloop-epoll.c:94,9'
          Dst:             array_idx_get_space_i
        - Src:             'ioloop-epoll.c:96,11'
          Dst:             malloc_multiply_check
        - Src:             'ioloop-epoll.c:96,11'
          Dst:             p_malloc
        - Src:             'ioloop-epoll.c:98,10'
          Dst:             ioloop_iolist_add
        - Src:             'ioloop-epoll.c:102,17'
          Dst:             epoll_event_mask
        - Src:             'ioloop-epoll.c:106,6'
          Dst:             epoll_ctl
        - Src:             'ioloop-epoll.c:107,7'
          Dst:             __errno_location
        - Src:             'ioloop-epoll.c:108,4'
          Dst:             i_panic
        - Src:             'ioloop-epoll.c:113,3'
          Dst:             i_panic
        - Src:             'ioloop-epoll.c:123,4'
          Dst:             array_append_space_i
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    io_loop_handler_deinit
      functionSourceFile: '/src/dovecot/src/lib/ioloop-epoll.c'
      linkageType:     externalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         14
      ICount:          98
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - array_free_i
        - array_get_modifiable_i
        - close
        - i_error
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-epoll.c:50,2'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:51,3'
              BranchSideFuncs:
                - p_free_internal.7263
                - close
                - array_free_i.7275
                - array_free_i.7275
                - p_free_internal.7263
                - i_error
            - BranchSide:      'ioloop-epoll.c:53,12'
              BranchSideFuncs:
                - close
                - array_free_i.7275
                - array_free_i.7275
                - p_free_internal.7263
                - i_error
        - Branch String:   'ioloop-epoll.c:53,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:54,3'
              BranchSideFuncs:
                - i_error
                - array_free_i.7275
                - array_free_i.7275
                - p_free_internal.7263
            - BranchSide:      'ioloop-epoll.c:55,2'
              BranchSideFuncs:
                - array_free_i.7275
                - array_free_i.7275
                - p_free_internal.7263
      Callsites:
        - Src:             'ioloop-epoll.c:49,9'
          Dst:             array_get_modifiable_i
        - Src:             'ioloop-epoll.c:51,3'
          Dst:             p_free_internal
        - Src:             'ioloop-epoll.c:53,6'
          Dst:             close
        - Src:             'ioloop-epoll.c:54,3'
          Dst:             i_error
        - Src:             'ioloop-epoll.c:55,2'
          Dst:             array_free_i
        - Src:             'ioloop-epoll.c:56,2'
          Dst:             array_free_i
        - Src:             'ioloop-epoll.c:57,2'
          Dst:             p_free_internal
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    2
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7244
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7244
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    io_loop_handler_init
      functionSourceFile: '/src/dovecot/src/lib/ioloop-epoll.c'
      linkageType:     externalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ioloop
        - initial_fd_count
      BBCount:         7
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - array_create_i
        - epoll_create
        - fd_close_on_exec
        - i_fatal
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-epoll.c:32,6'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:33,7'
              BranchSideFuncs:
                - __errno_location
                - i_fatal
                - i_fatal
            - BranchSide:      'ioloop-epoll.c:40,19'
              BranchSideFuncs:
                - fd_close_on_exec
        - Branch String:   'ioloop-epoll.c:33,7'
          Branch Sides:
            - BranchSide:      'ioloop-epoll.c:34,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'ioloop-epoll.c:36,4'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'ioloop-epoll.c:26,34'
          Dst:             malloc_multiply_check
        - Src:             'ioloop-epoll.c:26,34'
          Dst:             p_malloc
        - Src:             'ioloop-epoll.c:28,2'
          Dst:             array_create_i
        - Src:             'ioloop-epoll.c:29,2'
          Dst:             array_create_i
        - Src:             'ioloop-epoll.c:31,14'
          Dst:             epoll_create
        - Src:             'ioloop-epoll.c:33,7'
          Dst:             __errno_location
        - Src:             'ioloop-epoll.c:34,4'
          Dst:             i_fatal
        - Src:             'ioloop-epoll.c:36,4'
          Dst:             i_fatal
        - Src:             'ioloop-epoll.c:40,2'
          Dst:             fd_close_on_exec
    - functionName:    epoll_create
      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:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lib_deinit
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - data_stack_deinit
        - data_stack_deinit_event
        - event_filter_deinit
        - failures_deinit
        - hostpid_deinit
        - i_close_fd_path
        - i_panic
        - ipwd_deinit
        - lib_atexit_run
        - lib_event_deinit
        - process_title_deinit
        - random_deinit
        - restrict_access_deinit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib.c:210,2'
          Branch Sides:
            - BranchSide:      'lib.c:210,2'
              BranchSideFuncs:
                - lib_atexit_run
                - ipwd_deinit
                - hostpid_deinit
                - event_filter_deinit
                - data_stack_deinit_event
                - lib_event_deinit
                - restrict_access_deinit
                - i_close_fd_path
                - data_stack_deinit
                - failures_deinit
                - process_title_deinit
                - random_deinit
                - i_panic
            - BranchSide:      'lib.c:210,2'
              BranchSideFuncs:
                - lib_atexit_run
                - ipwd_deinit
                - hostpid_deinit
                - event_filter_deinit
                - data_stack_deinit_event
                - lib_event_deinit
                - restrict_access_deinit
                - i_close_fd_path
                - data_stack_deinit
                - failures_deinit
                - process_title_deinit
                - random_deinit
                - i_panic
        - Branch String:   'lib.c:210,2'
          Branch Sides:
            - BranchSide:      'lib.c:210,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:210,2'
              BranchSideFuncs:
                - lib_atexit_run
                - ipwd_deinit
                - hostpid_deinit
                - event_filter_deinit
                - data_stack_deinit_event
                - lib_event_deinit
                - restrict_access_deinit
                - i_close_fd_path
                - data_stack_deinit
                - failures_deinit
                - process_title_deinit
                - random_deinit
      Callsites:
        - Src:             'lib.c:210,2'
          Dst:             i_panic
        - Src:             'lib.c:212,2'
          Dst:             lib_atexit_run
        - Src:             'lib.c:213,2'
          Dst:             ipwd_deinit
        - Src:             'lib.c:214,2'
          Dst:             hostpid_deinit
        - Src:             'lib.c:215,2'
          Dst:             event_filter_deinit
        - Src:             'lib.c:216,2'
          Dst:             data_stack_deinit_event
        - Src:             'lib.c:217,2'
          Dst:             lib_event_deinit
        - Src:             'lib.c:218,2'
          Dst:             restrict_access_deinit
        - Src:             'lib.c:219,2'
          Dst:             i_close_fd_path
        - Src:             'lib.c:220,2'
          Dst:             data_stack_deinit
        - Src:             'lib.c:221,2'
          Dst:             failures_deinit
        - Src:             'lib.c:222,2'
          Dst:             process_title_deinit
        - Src:             'lib.c:223,2'
          Dst:             random_deinit
    - functionName:    lib_atexit_run
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_free_i
        - array_is_created_i
        - array_sort_i
        - atexit_callback_priority_cmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:132,6'
          Branch Sides:
            - BranchSide:      'lib.c:130,32'
              BranchSideFuncs:
                - array_is_created_i.7338
                - array_sort_i
                - array_free_i.7339
            - BranchSide:      'lib.c:132,6'
              BranchSideFuncs:
                - array_is_created_i.7338
                - array_sort_i
                - array_free_i.7339
        - Branch String:   'lib.c:132,6'
          Branch Sides:
            - BranchSide:      'lib.c:132,6'
              BranchSideFuncs:
                - array_sort_i
                - array_free_i.7339
            - BranchSide:      'lib.c:133,3'
              BranchSideFuncs:
                - array_sort_i
                - array_free_i.7339
        - Branch String:   'lib.c:134,3'
          Branch Sides:
            - BranchSide:      'lib.c:135,6'
              BranchSideFuncs:
                - array_free_i.7339
            - BranchSide:      'lib.c:136,3'
              BranchSideFuncs:
                - array_free_i.7339
      Callsites:
        - Src:             'lib.c:132,6'
          Dst:             array_is_created_i
        - Src:             'lib.c:133,3'
          Dst:             array_sort_i
        - Src:             'lib.c:133,3'
          Dst:             atexit_callback_priority_cmp
        - Src:             'lib.c:136,3'
          Dst:             array_free_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atexit_callback_priority_cmp
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cb1
        - cb2
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    lib_is_initialized
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lib_atexit_handler
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          37
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - strlen
        - write
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:174,7'
          Branch Sides:
            - BranchSide:      'lib.c:174,7'
              BranchSideFuncs:
                - strlen
                - write
                - abort
            - BranchSide:      'lib.c:174,7'
              BranchSideFuncs:
                - strlen
                - write
                - abort
        - Branch String:   'lib.c:174,6'
          Branch Sides:
            - BranchSide:      'lib.c:175,15'
              BranchSideFuncs: []
            - BranchSide:      'lib.c:181,1'
              BranchSideFuncs: []
        - Branch String:   'lib.c:176,7'
          Branch Sides:
            - BranchSide:      'lib.c:178,3'
              BranchSideFuncs:
                - abort
            - BranchSide:      'lib.c:179,3'
              BranchSideFuncs:
                - abort
      Callsites:
        - Src:             'lib.c:176,35'
          Dst:             strlen
        - Src:             'lib.c:176,7'
          Dst:             write
        - Src:             'lib.c:179,3'
          Dst:             abort
    - functionName:    lib_open_non_stdio_dev_null
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - dup
        - fd_close_on_exec
        - i_fatal
        - open
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:142,16'
          Branch Sides:
            - BranchSide:      'lib.c:142,16'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - dup
                - i_fatal
                - i_fatal
            - BranchSide:      'lib.c:142,16'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - dup
                - i_fatal
                - i_fatal
        - Branch String:   'lib.c:143,6'
          Branch Sides:
            - BranchSide:      'lib.c:144,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib.c:149,2'
              BranchSideFuncs:
                - fd_close_on_exec
                - dup
                - i_fatal
        - Branch String:   'lib.c:149,2'
          Branch Sides:
            - BranchSide:      'lib.c:150,21'
              BranchSideFuncs:
                - dup
                - fd_close_on_exec
                - i_fatal
            - BranchSide:      'lib.c:155,19'
              BranchSideFuncs:
                - fd_close_on_exec
        - Branch String:   'lib.c:151,7'
          Branch Sides:
            - BranchSide:      'lib.c:149,2'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib.c:152,4'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'lib.c:142,16'
          Dst:             open
        - Src:             'lib.c:144,3'
          Dst:             i_fatal
        - Src:             'lib.c:150,17'
          Dst:             dup
        - Src:             'lib.c:152,4'
          Dst:             i_fatal
        - Src:             'lib.c:155,2'
          Dst:             fd_close_on_exec
    - functionName:    dup
      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:    lib_init
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - atexit
        - data_stack_init
        - event_filter_init
        - hostpid_init
        - i_panic
        - lib_atexit_handler
        - lib_event_init
        - lib_open_non_stdio_dev_null
        - lib_set_clean_exit
        - random_init
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:185,2'
          Branch Sides:
            - BranchSide:      'lib.c:185,2'
              BranchSideFuncs:
                - random_init
                - data_stack_init
                - hostpid_init
                - lib_open_non_stdio_dev_null
                - lib_event_init
                - event_filter_init
                - lib_set_clean_exit
                - atexit
                - i_panic
            - BranchSide:      'lib.c:185,2'
              BranchSideFuncs:
                - random_init
                - data_stack_init
                - hostpid_init
                - lib_open_non_stdio_dev_null
                - lib_event_init
                - event_filter_init
                - lib_set_clean_exit
                - atexit
                - i_panic
        - Branch String:   'lib.c:185,2'
          Branch Sides:
            - BranchSide:      'lib.c:185,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:185,2'
              BranchSideFuncs:
                - random_init
                - data_stack_init
                - hostpid_init
                - lib_open_non_stdio_dev_null
                - lib_event_init
                - event_filter_init
                - lib_set_clean_exit
                - atexit
      Callsites:
        - Src:             'lib.c:185,2'
          Dst:             i_panic
        - Src:             'lib.c:186,2'
          Dst:             random_init
        - Src:             'lib.c:187,2'
          Dst:             data_stack_init
        - Src:             'lib.c:188,2'
          Dst:             hostpid_init
        - Src:             'lib.c:189,2'
          Dst:             lib_open_non_stdio_dev_null
        - Src:             'lib.c:190,2'
          Dst:             lib_event_init
        - Src:             'lib.c:191,2'
          Dst:             event_filter_init
        - Src:             'lib.c:197,2'
          Dst:             lib_set_clean_exit
        - Src:             'lib.c:198,2'
          Dst:             atexit
        - Src:             'lib.c:198,2'
          Dst:             lib_atexit_handler
    - functionName:    lib_set_clean_exit
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - set
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atexit
      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:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7331
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7331
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    lib_atexit_priority
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - callback
        - priority
      BBCount:         17
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_get_i
        - array_is_created_i
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib.c:105,6'
          Branch Sides:
            - BranchSide:      'lib.c:106,3'
              BranchSideFuncs:
                - array_get_i.7352
                - array_append_space_i.7351
                - i_panic
            - BranchSide:      'lib.c:109,15'
              BranchSideFuncs:
                - array_get_i.7352
                - array_append_space_i.7351
                - i_panic
        - Branch String:   'lib.c:110,3'
          Branch Sides:
            - BranchSide:      'lib.c:0,0'
              BranchSideFuncs:
                - array_append_space_i.7351
                - i_panic
            - BranchSide:      'lib.c:111,8'
              BranchSideFuncs:
                - array_append_space_i.7351
                - i_panic
        - Branch String:   'lib.c:111,8'
          Branch Sides:
            - BranchSide:      'lib.c:112,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:115,3'
              BranchSideFuncs:
                - array_append_space_i.7351
                - i_panic
        - Branch String:   'lib.c:112,5'
          Branch Sides:
            - BranchSide:      'lib.c:112,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib.c:113,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib.c:105,7'
          Dst:             array_is_created_i
        - Src:             'lib.c:106,3'
          Dst:             array_create_i
        - Src:             'lib.c:109,15'
          Dst:             array_get_i
        - Src:             'lib.c:112,5'
          Dst:             i_panic
        - Src:             'lib.c:117,7'
          Dst:             array_append_space_i
    - functionName:    lib_atexit
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lib_atexit_priority
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib.c:96,2'
          Dst:             lib_atexit_priority
    - functionName:    i_getopt_reset
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_unlink_if_exists
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - source_fname
        - source_linenum
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - i_error
        - unlink
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:72,6'
          Branch Sides:
            - BranchSide:      'lib.c:73,3'
              BranchSideFuncs: []
            - BranchSide:      'lib.c:74,11'
              BranchSideFuncs:
                - __errno_location
                - i_error
        - Branch String:   'lib.c:74,11'
          Branch Sides:
            - BranchSide:      'lib.c:75,3'
              BranchSideFuncs: []
            - BranchSide:      'lib.c:78,4'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'lib.c:72,6'
          Dst:             unlink
        - Src:             'lib.c:74,11'
          Dst:             __errno_location
        - Src:             'lib.c:77,3'
          Dst:             i_error
    - functionName:    unlink
      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:    i_unlink
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - source_fname
        - source_linenum
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_error
        - unlink
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib.c:60,6'
          Branch Sides:
            - BranchSide:      'lib.c:62,4'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'lib.c:65,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib.c:60,6'
          Dst:             unlink
        - Src:             'lib.c:61,3'
          Dst:             i_error
    - functionName:    i_faccessat2
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - dirfd
        - pathname
        - mode
        - flags
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - faccessat
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib.c:53,9'
          Dst:             faccessat
    - functionName:    faccessat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lib_exit
      functionSourceFile: '/src/dovecot/src/lib/lib.c'
      linkageType:     externalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - status
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - exit
        - lib_set_clean_exit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib.c:165,2'
          Dst:             lib_set_clean_exit
        - Src:             'lib.c:166,2'
          Dst:             exit
    - functionName:    last_passthrough_event
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    18
      BranchProfiles:
        - Branch String:   'lib-event.c:99,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:99,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:99,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-event.c:99,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:99,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:99,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:99,2'
          Dst:             i_panic
    - functionName:    event_import_strlist
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1492
      functionLinenumberEnd: 1514
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - field
        - _args
        - error_r
      BBCount:         15
      ICount:          138
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_i
        - array_create_i
        - p_strdup
        - str_to_uint
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1497,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1499,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1502,2'
              BranchSideFuncs:
                - array_create_i.7637
                - t_strdup_printf
                - p_strdup
                - array_append_i.7638
        - Branch String:   'lib-event.c:1503,25'
          Branch Sides:
            - BranchSide:      'lib-event.c:1503,28'
              BranchSideFuncs:
                - t_strdup_printf
                - p_strdup
                - array_append_i.7638
            - BranchSide:      'lib-event.c:1503,2'
              BranchSideFuncs:
                - t_strdup_printf
                - p_strdup
                - array_append_i.7638
        - Branch String:   'lib-event.c:1503,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1504,30'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.7638
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1507,6'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'lib-event.c:1507,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1509,9'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1512,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1497,6'
          Dst:             str_to_uint
        - Src:             'lib-event.c:1498,14'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1502,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1504,21'
          Dst:             p_strdup
        - Src:             'lib-event.c:1505,3'
          Dst:             array_append_i
        - Src:             'lib-event.c:1508,14'
          Dst:             t_strdup_printf
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    12
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7640
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7640
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_import_field
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1519
      functionLinenumberEnd: 1579
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - code
        - arg
        - _args
        - error_r
      BBCount:         28
      ICount:          226
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - event_get_field
        - event_import_strlist
        - event_import_tv
        - i_unreached
        - net_addr2ip
        - null_strcmp
        - p_strdup
        - str_to_intmax
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1523,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1524,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1527,46'
              BranchSideFuncs:
                - event_get_field
                - event_import_strlist
                - net_addr2ip
                - t_strdup_printf
                - event_import_tv
                - t_strdup_printf
                - p_strdup
                - null_strcmp
                - str_to_intmax
                - t_strdup_printf
                - i_unreached
        - Branch String:   'lib-event.c:1528,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1529,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1532,10'
              BranchSideFuncs:
                - event_import_strlist
                - net_addr2ip
                - t_strdup_printf
                - event_import_tv
                - t_strdup_printf
                - p_strdup
                - null_strcmp
                - str_to_intmax
                - t_strdup_printf
                - i_unreached
        - Branch String:   'lib-event.c:1532,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1534,3'
              BranchSideFuncs:
                - str_to_intmax
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1543,7'
              BranchSideFuncs:
                - p_strdup
                - null_strcmp
            - BranchSide:      'lib-event.c:1552,3'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1562,3'
              BranchSideFuncs:
                - net_addr2ip
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1571,29'
              BranchSideFuncs:
                - event_import_strlist
            - BranchSide:      'lib-event.c:1575,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'lib-event.c:1535,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1538,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1541,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1543,55'
          Branch Sides:
            - BranchSide:      'lib-event.c:1544,19'
              BranchSideFuncs:
                - null_strcmp
                - p_strdup
            - BranchSide:      'lib-event.c:1548,3'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'lib-event.c:1543,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1546,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1548,3'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'lib-event.c:1553,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1556,10'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1559,7'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1563,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1566,6'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1569,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1571,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1572,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1573,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1527,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1535,7'
          Dst:             str_to_intmax
        - Src:             'lib-event.c:1536,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1544,7'
          Dst:             null_strcmp
        - Src:             'lib-event.c:1549,22'
          Dst:             p_strdup
        - Src:             'lib-event.c:1553,8'
          Dst:             event_import_tv
        - Src:             'lib-event.c:1555,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1563,7'
          Dst:             net_addr2ip
        - Src:             'lib-event.c:1564,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1571,8'
          Dst:             event_import_strlist
        - Src:             'lib-event.c:1575,3'
          Dst:             i_unreached
    - functionName:    event_get_field
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1044
      functionLinenumberEnd: 1057
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - event
        - key
        - clear
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
        - event_find_field_nonrecursive
        - event_set_changed
        - p_strdup
      functionUses:    8
      BranchProfiles:
        - Branch String:   'lib-event.c:1048,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1049,8'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_create_i.7637
                - array_append_space_i.7652
                - p_strdup
                - event_set_changed
            - BranchSide:      'lib-event.c:1053,13'
              BranchSideFuncs:
                - event_set_changed
        - Branch String:   'lib-event.c:1049,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1050,4'
              BranchSideFuncs:
                - array_append_space_i.7652
                - p_strdup
                - event_set_changed
            - BranchSide:      'lib-event.c:1051,11'
              BranchSideFuncs:
                - array_append_space_i.7652
                - p_strdup
                - event_set_changed
      Callsites:
        - Src:             'lib-event.c:1047,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:1049,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1050,4'
          Dst:             array_create_i
        - Src:             'lib-event.c:1051,11'
          Dst:             array_append_space_i
        - Src:             'lib-event.c:1052,16'
          Dst:             p_strdup
        - Src:             'lib-event.c:1056,2'
          Dst:             event_set_changed
    - functionName:    event_import_tv
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1469
      functionLinenumberEnd: 1487
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - arg_secs
        - arg_usecs
        - tv_r
        - error_r
      BBCount:         13
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - str_to_time
        - str_to_uint
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-event.c:1472,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1473,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1477,6'
              BranchSideFuncs:
                - str_to_uint
        - Branch String:   'lib-event.c:1477,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1478,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1481,18'
              BranchSideFuncs:
                - str_to_uint
        - Branch String:   'lib-event.c:1481,41'
          Branch Sides:
            - BranchSide:      'lib-event.c:1481,44'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1482,4'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1481,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1482,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1485,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1472,6'
          Dst:             str_to_time
        - Src:             'lib-event.c:1481,6'
          Dst:             str_to_uint
    - functionName:    event_find_field_nonrecursive
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - strcmp
      functionUses:    7
      BranchProfiles:
        - Branch String:   'lib-event.c:949,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:950,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - strcmp
            - BranchSide:      'lib-event.c:952,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - strcmp
        - Branch String:   'lib-event.c:952,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:953,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'lib-event.c:956,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:953,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:954,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:955,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'lib-event.c:949,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:952,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:953,7'
          Dst:             strcmp
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_space_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_space_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:336,9'
          Dst:             buffer_append_space_unsafe
    - functionName:    event_set_changed
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-event.c:123,28'
          Branch Sides:
            - BranchSide:      'lib-event.c:124,6'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:125,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:123,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:123,6'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:125,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_category_add_to_array
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 825
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - internal
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_append_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:828,2'
          Dst:             array_append_i
        - Src:             'lib-event.c:829,2'
          Dst:             array_append_i
    - functionName:    event_category_find_internal
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 806
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:809,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:809,2'
              BranchSideFuncs:
                - i_memcpy.7653
                - strcmp
            - BranchSide:      'lib-event.c:809,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7653
        - Branch String:   'lib-event.c:809,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:810,14'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:814,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:810,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:811,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:812,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7653
      Callsites:
        - Src:             'lib-event.c:809,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:810,7'
          Dst:             strcmp
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    8
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    event_copy_parent_defaults
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - parent
      BBCount:         1
      ICount:          90
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    lib_event_deinit
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1875
      functionLinenumberEnd: 1896
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          115
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - array_free_i
        - event_unset_global_core_log_filter
        - event_unset_global_debug_log_filter
        - event_unset_global_debug_send_filter
        - i_memcpy
        - i_warning
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1878,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1876,34'
              BranchSideFuncs:
                - event_unset_global_debug_log_filter
                - event_unset_global_debug_send_filter
                - event_unset_global_core_log_filter
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - p_free_internal.7661
                - p_free_internal.7661
                - i_memcpy.7653
                - i_warning
            - BranchSide:      'lib-event.c:1881,37'
              BranchSideFuncs:
                - event_unset_global_debug_log_filter
                - event_unset_global_debug_send_filter
                - event_unset_global_core_log_filter
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - p_free_internal.7661
                - p_free_internal.7661
                - i_memcpy.7653
                - i_warning
        - Branch String:   'lib-event.c:1881,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1883,6'
              BranchSideFuncs:
                - i_warning
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - p_free_internal.7661
                - p_free_internal.7661
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:1887,2'
              BranchSideFuncs:
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - p_free_internal.7661
                - p_free_internal.7661
                - i_memcpy.7653
        - Branch String:   'lib-event.c:1887,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1887,2'
              BranchSideFuncs:
                - i_memcpy.7653
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - p_free_internal.7661
                - p_free_internal.7661
            - BranchSide:      'lib-event.c:1887,2'
              BranchSideFuncs:
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - p_free_internal.7661
                - p_free_internal.7661
                - i_memcpy.7653
        - Branch String:   'lib-event.c:1887,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1888,3'
              BranchSideFuncs:
                - p_free_internal.7661
                - p_free_internal.7661
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:1891,2'
              BranchSideFuncs:
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
                - array_free_i.7657
      Callsites:
        - Src:             'lib-event.c:1878,2'
          Dst:             event_unset_global_debug_log_filter
        - Src:             'lib-event.c:1879,2'
          Dst:             event_unset_global_debug_send_filter
        - Src:             'lib-event.c:1880,2'
          Dst:             event_unset_global_core_log_filter
        - Src:             'lib-event.c:1882,3'
          Dst:             i_warning
        - Src:             'lib-event.c:1887,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:1888,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1889,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1891,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1892,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1893,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1894,2'
          Dst:             array_free_i
        - Src:             'lib-event.c:1895,2'
          Dst:             array_free_i
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    11
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    lib_event_init
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1867
      functionLinenumberEnd: 1872
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1868,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1868,2'
              BranchSideFuncs:
                - array_create_i.7637
                - array_create_i.7637
                - array_create_i.7637
                - array_create_i.7637
            - BranchSide:      'lib-event.c:1868,2'
              BranchSideFuncs:
                - array_create_i.7637
                - array_create_i.7637
                - array_create_i.7637
                - array_create_i.7637
      Callsites:
        - Src:             'lib-event.c:1868,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1869,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1870,2'
          Dst:             array_create_i
        - Src:             'lib-event.c:1871,2'
          Dst:             array_create_i
    - functionName:    event_enable_user_cpu_usecs
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1862
      functionLinenumberEnd: 1864
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_self_rusage
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1863,2'
          Dst:             get_self_rusage
    - functionName:    get_self_rusage
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ru_r
      BBCount:         5
      ICount:          27
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - getrusage
        - i_fatal
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:87,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:88,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-event.c:89,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:87,6'
          Dst:             getrusage
        - Src:             'lib-event.c:88,3'
          Dst:             i_fatal
    - functionName:    getrusage
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_passthrough_event
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1834
      functionLinenumberEnd: 1837
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1835,24'
          Branch Sides:
            - BranchSide:      'lib-event.c:1835,16'
              BranchSideFuncs:
                - last_passthrough_event
            - BranchSide:      'lib-event.c:1835,24'
              BranchSideFuncs:
                - last_passthrough_event
      Callsites:
        - Src:             'lib-event.c:1835,24'
          Dst:             last_passthrough_event
    - functionName:    event_passthrough_clear_field
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1828
      functionLinenumberEnd: 1830
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_field_clear
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1829,20'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1829,2'
          Dst:             event_field_clear
    - functionName:    event_field_clear
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1212
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_str
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1211,2'
          Dst:             event_add_str
    - functionName:    event_passthrough_set_append_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1713
      functionLinenumberEnd: 1715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_set_append_log_prefix
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1714,30'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1714,2'
          Dst:             event_set_append_log_prefix
    - functionName:    event_passthrough_replace_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1720
      functionLinenumberEnd: 1722
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_replace_log_prefix
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1721,27'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1721,2'
          Dst:             event_replace_log_prefix
    - functionName:    event_passthrough_set_name
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1727
      functionLinenumberEnd: 1729
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_set_name
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1728,17'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1728,2'
          Dst:             event_set_name
    - functionName:    event_passthrough_set_source
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1735
      functionLinenumberEnd: 1738
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - filename
        - linenum
        - literal_fname
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_set_source
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1736,19'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1736,2'
          Dst:             event_set_source
    - functionName:    event_passthrough_set_always_log_source
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1743
      functionLinenumberEnd: 1745
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_set_always_log_source
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1744,30'
          Branch Sides:
            - BranchSide:      'lib-event.c:1744,30'
              BranchSideFuncs:
                - last_passthrough_event
                - event_set_always_log_source
            - BranchSide:      'lib-event.c:1744,30'
              BranchSideFuncs:
                - last_passthrough_event
                - event_set_always_log_source
      Callsites:
        - Src:             'lib-event.c:1744,30'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1744,2'
          Dst:             event_set_always_log_source
    - functionName:    event_passthrough_add_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1750
      functionLinenumberEnd: 1752
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - categories
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_categories
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1751,23'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1751,2'
          Dst:             event_add_categories
    - functionName:    event_passthrough_add_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1757
      functionLinenumberEnd: 1759
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - category
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_category
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1758,21'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1758,2'
          Dst:             event_add_category
    - functionName:    event_passthrough_add_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1764
      functionLinenumberEnd: 1766
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fields
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_fields
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1765,19'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1765,2'
          Dst:             event_add_fields
    - functionName:    event_passthrough_add_str
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1771
      functionLinenumberEnd: 1773
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_str
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1772,16'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1772,2'
          Dst:             event_add_str
    - functionName:    event_passthrough_add_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1793
      functionLinenumberEnd: 1795
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - key
        - num
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_int
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1794,16'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1794,2'
          Dst:             event_add_int
    - functionName:    event_passthrough_add_int_nonzero
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1800
      functionLinenumberEnd: 1802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - key
        - num
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_int_nonzero
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1801,24'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1801,2'
          Dst:             event_add_int_nonzero
    - functionName:    event_passthrough_add_timeval
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1807
      functionLinenumberEnd: 1809
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - tv
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_timeval
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1808,20'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1808,2'
          Dst:             event_add_timeval
    - functionName:    event_passthrough_add_ip
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1814
      functionLinenumberEnd: 1816
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - ip
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_ip
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1815,15'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1815,2'
          Dst:             event_add_ip
    - functionName:    event_passthrough_inc_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1821
      functionLinenumberEnd: 1823
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - key
        - num
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_inc_int
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1822,16'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1822,2'
          Dst:             event_inc_int
    - functionName:    event_passthrough_strlist_append
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1778
      functionLinenumberEnd: 1780
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - key
        - value
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_strlist_append
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1779,23'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1779,2'
          Dst:             event_strlist_append
    - functionName:    event_passthrough_strlist_replace
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1786
      functionLinenumberEnd: 1788
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - key
        - values
        - count
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_strlist_replace
        - last_passthrough_event
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1787,24'
          Dst:             last_passthrough_event
        - Src:             'lib-event.c:1787,2'
          Dst:             event_strlist_replace
    - functionName:    event_strlist_replace
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1104
      functionLinenumberEnd: 1110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - key
        - values
        - count
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - event_get_field
        - event_strlist_append
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1108,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1109,24'
              BranchSideFuncs:
                - event_strlist_append
            - BranchSide:      'lib-event.c:1110,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1105,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1109,3'
          Dst:             event_strlist_append
    - functionName:    event_strlist_append
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
        - value
      BBCount:         15
      ICount:          96
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - array_lsearch_i
        - event_get_field
        - i_strcmp_p
        - p_strdup
      functionUses:    11
      BranchProfiles:
        - Branch String:   'lib-event.c:1085,58'
          Branch Sides:
            - BranchSide:      'lib-event.c:1086,7'
              BranchSideFuncs:
                - array_create_i.7637
                - p_strdup
                - array_lsearch_i
                - array_append_i.7638
            - BranchSide:      'lib-event.c:1087,3'
              BranchSideFuncs:
                - array_create_i.7637
                - p_strdup
                - array_lsearch_i
                - array_append_i.7638
        - Branch String:   'lib-event.c:1085,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1087,3'
              BranchSideFuncs:
                - p_strdup
                - array_lsearch_i
                - array_append_i.7638
            - BranchSide:      'lib-event.c:1092,6'
              BranchSideFuncs:
                - p_strdup
                - array_lsearch_i
                - array_append_i.7638
        - Branch String:   'lib-event.c:1092,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1093,10'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1095,29'
              BranchSideFuncs:
                - p_strdup
                - array_lsearch_i
                - array_append_i.7638
        - Branch String:   'lib-event.c:1096,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1097,3'
              BranchSideFuncs:
                - array_append_i.7638
            - BranchSide:      'lib-event.c:1098,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1083,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1086,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1088,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:1095,20'
          Dst:             p_strdup
        - Src:             'lib-event.c:1096,6'
          Dst:             array_lsearch_i
        - Src:             'lib-event.c:1096,6'
          Dst:             i_strcmp_p
        - Src:             'lib-event.c:1097,3'
          Dst:             array_append_i
    - functionName:    event_inc_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - event
        - key
        - num
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - event_add_int
        - event_find_field_nonrecursive
        - event_set_changed
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1150,20'
          Branch Sides:
            - BranchSide:      'lib-event.c:1150,23'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'lib-event.c:1151,24'
              BranchSideFuncs:
                - event_add_int
        - Branch String:   'lib-event.c:1150,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1151,24'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'lib-event.c:1153,25'
              BranchSideFuncs:
                - event_set_changed
      Callsites:
        - Src:             'lib-event.c:1149,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:1151,10'
          Dst:             event_add_int
        - Src:             'lib-event.c:1154,2'
          Dst:             event_set_changed
    - functionName:    event_add_int
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - event
        - key
        - num
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_get_field
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1130,10'
          Dst:             event_get_field
    - functionName:    event_add_ip
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
        - ip
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - event_field_clear
        - event_find_field_recursive
        - event_get_field
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-event.c:1175,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1178,34'
              BranchSideFuncs:
                - event_find_field_recursive
                - event_field_clear
            - BranchSide:      'lib-event.c:1183,26'
              BranchSideFuncs:
                - event_get_field
        - Branch String:   'lib-event.c:1178,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1179,22'
              BranchSideFuncs:
                - event_field_clear
            - BranchSide:      'lib-event.c:1180,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1178,7'
          Dst:             event_find_field_recursive
        - Src:             'lib-event.c:1179,4'
          Dst:             event_field_clear
        - Src:             'lib-event.c:1183,10'
          Dst:             event_get_field
    - functionName:    event_find_field_recursive
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 961
      functionLinenumberEnd: 978
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
      BBCount:         15
      ICount:          77
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - event_find_field_nonrecursive
        - event_get_global
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib-event.c:965,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:966,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:967,11'
              BranchSideFuncs:
                - event_get_global
                - event_find_field_nonrecursive
                - event_find_field_nonrecursive
        - Branch String:   'lib-event.c:968,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:965,46'
              BranchSideFuncs:
                - event_find_field_nonrecursive
                - event_get_global
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:971,10'
              BranchSideFuncs:
                - event_get_global
                - event_find_field_nonrecursive
        - Branch String:   'lib-event.c:972,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:973,46'
              BranchSideFuncs:
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:977,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:973,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:974,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:975,11'
              BranchSideFuncs:
                - event_find_field_nonrecursive
      Callsites:
        - Src:             'lib-event.c:965,16'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:971,10'
          Dst:             event_get_global
        - Src:             'lib-event.c:973,16'
          Dst:             event_find_field_nonrecursive
    - functionName:    event_get_global
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_add_timeval
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
        - tv
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_get_field
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1164,10'
          Dst:             event_get_field
    - functionName:    event_add_int_nonzero
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1138
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - event
        - key
        - num
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_add_int
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1139,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1140,24'
              BranchSideFuncs:
                - event_add_int
            - BranchSide:      'lib-event.c:1141,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1140,10'
          Dst:             event_add_int
    - functionName:    event_add_str
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1062
      functionLinenumberEnd: 1078
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
        - value
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - event_find_field_recursive
        - event_get_field
        - p_strdup
      functionUses:    40
      BranchProfiles:
        - Branch String:   'lib-event.c:1065,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1069,34'
              BranchSideFuncs:
                - event_find_field_recursive
                - event_get_field
                - p_strdup
            - BranchSide:      'lib-event.c:1074,26'
              BranchSideFuncs:
                - event_get_field
                - p_strdup
        - Branch String:   'lib-event.c:1069,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1070,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1071,9'
              BranchSideFuncs:
                - event_get_field
                - p_strdup
      Callsites:
        - Src:             'lib-event.c:1069,7'
          Dst:             event_find_field_recursive
        - Src:             'lib-event.c:1074,10'
          Dst:             event_get_field
        - Src:             'lib-event.c:1076,21'
          Dst:             p_strdup
    - functionName:    event_add_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1192
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - fields
      BBCount:         16
      ICount:          142
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - event_add_int
        - event_add_ip
        - event_add_str
        - event_add_timeval
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1193,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1194,7'
              BranchSideFuncs:
                - event_add_int
                - event_add_ip
                - event_add_timeval
                - event_add_str
            - BranchSide:      'lib-event.c:1206,9'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1194,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1195,18'
              BranchSideFuncs:
                - event_add_str
                - event_add_int
                - event_add_ip
                - event_add_timeval
            - BranchSide:      'lib-event.c:1196,12'
              BranchSideFuncs:
                - event_add_int
                - event_add_str
                - event_add_ip
                - event_add_timeval
        - Branch String:   'lib-event.c:1196,12'
          Branch Sides:
            - BranchSide:      'lib-event.c:1197,22'
              BranchSideFuncs:
                - event_add_timeval
                - event_add_int
                - event_add_ip
                - event_add_str
            - BranchSide:      'lib-event.c:1199,14'
              BranchSideFuncs:
                - event_add_int
                - event_add_timeval
                - event_add_str
                - event_add_ip
        - Branch String:   'lib-event.c:1199,14'
          Branch Sides:
            - BranchSide:      'lib-event.c:1200,17'
              BranchSideFuncs:
                - event_add_ip
                - event_add_int
                - event_add_timeval
                - event_add_str
            - BranchSide:      'lib-event.c:1202,18'
              BranchSideFuncs:
                - event_add_int
                - event_add_ip
                - event_add_timeval
                - event_add_str
      Callsites:
        - Src:             'lib-event.c:1195,4'
          Dst:             event_add_str
        - Src:             'lib-event.c:1197,4'
          Dst:             event_add_timeval
        - Src:             'lib-event.c:1200,4'
          Dst:             event_add_ip
        - Src:             'lib-event.c:1202,4'
          Dst:             event_add_int
    - functionName:    event_add_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 939
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - category
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_add_categories
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:941,9'
          Dst:             event_add_categories
    - functionName:    event_add_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 921
      functionLinenumberEnd: 934
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - categories
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - event_category_register
        - event_find_category
        - event_recalculate_debug_level
        - event_set_changed
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:924,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:925,3'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7678
                - event_category_register
                - event_find_category
                - array_append_i.7638
            - BranchSide:      'lib-event.c:927,20'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7678
                - event_category_register
                - event_find_category
                - array_append_i.7638
        - Branch String:   'lib-event.c:927,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:928,44'
              BranchSideFuncs:
                - event_category_register
                - event_find_category
                - array_append_i.7638
                - event_set_changed
                - event_recalculate_debug_level.7678
            - BranchSide:      'lib-event.c:932,20'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7678
        - Branch String:   'lib-event.c:929,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:930,4'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7678
                - event_category_register
                - event_find_category
                - array_append_i.7638
            - BranchSide:      'lib-event.c:931,2'
              BranchSideFuncs:
                - event_set_changed
                - event_recalculate_debug_level.7678
                - event_category_register
                - event_find_category
                - array_append_i.7638
      Callsites:
        - Src:             'lib-event.c:924,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:925,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:928,20'
          Dst:             event_category_register
        - Src:             'lib-event.c:929,8'
          Dst:             event_find_category
        - Src:             'lib-event.c:930,4'
          Dst:             array_append_i
        - Src:             'lib-event.c:932,2'
          Dst:             event_set_changed
        - Src:             'lib-event.c:933,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_category_register
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - category
      BBCount:         35
      ICount:          275
      EdgeCount:       43
      CyclomaticComplexity: 10
      functionsReached:
        - event_category_add_to_array
        - event_category_find_internal
        - event_category_register
        - i_memcpy
        - i_panic
        - i_strdup
        - malloc_multiply_check
        - p_malloc
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:840,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:841,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:844,6'
              BranchSideFuncs:
                - event_category_find_internal
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
                - i_panic
                - malloc_multiply_check.7680
                - p_malloc.7681
                - i_strdup
                - event_category_add_to_array
                - event_category_register
        - Branch String:   'lib-event.c:844,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:845,34'
              BranchSideFuncs:
                - event_category_register
                - event_category_find_internal
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
                - i_panic
                - malloc_multiply_check.7680
                - p_malloc.7681
                - i_strdup
                - event_category_add_to_array
            - BranchSide:      'lib-event.c:856,42'
              BranchSideFuncs:
                - event_category_find_internal
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
                - i_panic
                - malloc_multiply_check.7680
                - p_malloc.7681
                - i_strdup
                - event_category_add_to_array
        - Branch String:   'lib-event.c:857,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:859,14'
              BranchSideFuncs:
                - malloc_multiply_check.7680
                - p_malloc.7681
                - i_strdup
                - event_category_add_to_array
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:873,8'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
                - i_panic
        - Branch String:   'lib-event.c:860,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:861,23'
              BranchSideFuncs:
                - i_strdup
                - event_category_add_to_array
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:862,29'
              BranchSideFuncs:
                - i_strdup
                - event_category_add_to_array
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
        - Branch String:   'lib-event.c:873,34'
          Branch Sides:
            - BranchSide:      'lib-event.c:874,8'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
                - i_panic
            - BranchSide:      'lib-event.c:887,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
        - Branch String:   'lib-event.c:873,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:877,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:887,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
        - Branch String:   'lib-event.c:894,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:896,11'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:899,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
        - Branch String:   'lib-event.c:899,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:899,2'
              BranchSideFuncs:
                - i_memcpy.7653
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'lib-event.c:899,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7653
                - i_panic
        - Branch String:   'lib-event.c:899,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:899,58'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7653
                - i_panic
            - BranchSide:      'lib-event.c:903,10'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:901,4'
          Branch Sides:
            - BranchSide:      'lib-event.c:901,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:901,4'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
      Callsites:
        - Src:             'lib-event.c:845,10'
          Dst:             event_category_register
        - Src:             'lib-event.c:856,13'
          Dst:             event_category_find_internal
        - Src:             'lib-event.c:859,14'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:859,14'
          Dst:             p_malloc
        - Src:             'lib-event.c:862,20'
          Dst:             i_strdup
        - Src:             'lib-event.c:868,3'
          Dst:             event_category_add_to_array
        - Src:             'lib-event.c:879,4'
          Dst:             i_panic
        - Src:             'lib-event.c:899,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:899,58'
          Dst:             t_push
        - Src:             'lib-event.c:901,4'
          Dst:             t_pop
        - Src:             'lib-event.c:901,4'
          Dst:             i_panic
    - functionName:    event_find_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 909
      functionLinenumberEnd: 915
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - category
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - array_lsearch_ptr_i
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-event.c:913,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:913,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:913,2'
              BranchSideFuncs:
                - array_lsearch_ptr_i
      Callsites:
        - Src:             'lib-event.c:913,2'
          Dst:             i_panic
        - Src:             'lib-event.c:915,9'
          Dst:             array_lsearch_ptr_i
    - functionName:    event_recalculate_debug_level
      functionSourceFile: '/src/dovecot/src/lib/./lib-event-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    event_set_always_log_source
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_set_source
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - event
        - filename
        - linenum
        - literal_fname
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - p_strdup
        - strcmp
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib-event.c:733,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:733,6'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'lib-event.c:734,28'
              BranchSideFuncs:
                - p_strdup
        - Branch String:   'lib-event.c:734,28'
          Branch Sides:
            - BranchSide:      'lib-event.c:734,44'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:735,13'
              BranchSideFuncs:
                - p_strdup
      Callsites:
        - Src:             'lib-event.c:733,6'
          Dst:             strcmp
        - Src:             'lib-event.c:735,4'
          Dst:             p_strdup
    - functionName:    event_set_name
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - name
      BBCount:         5
      ICount:          36
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup
        - p_free_internal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:724,2'
          Dst:             p_free_internal
        - Src:             'lib-event.c:725,24'
          Dst:             i_strdup
    - functionName:    event_replace_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - prefix
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_set_log_prefix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:666,9'
          Dst:             event_set_log_prefix
    - functionName:    event_set_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - event
        - prefix
        - append
      BBCount:         11
      ICount:          93
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_strdup
        - p_free_internal
        - p_strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:642,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:644,32'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'lib-event.c:648,7'
              BranchSideFuncs:
                - i_strdup
                - p_free_internal.7661
        - Branch String:   'lib-event.c:648,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:649,4'
              BranchSideFuncs:
                - p_free_internal.7661
                - i_strdup
            - BranchSide:      'lib-event.c:651,4'
              BranchSideFuncs:
                - i_strdup
      Callsites:
        - Src:             'lib-event.c:644,23'
          Dst:             p_strdup
        - Src:             'lib-event.c:649,4'
          Dst:             p_free_internal
        - Src:             'lib-event.c:652,23'
          Dst:             i_strdup
    - functionName:    event_set_append_log_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - prefix
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_set_log_prefix
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:661,9'
          Dst:             event_set_log_prefix
    - functionName:    event_category_unregister_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1703
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         11
      ICount:          41
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - array_delete_i
        - array_lsearch_ptr_idx_i
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1706,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1706,7'
              BranchSideFuncs:
                - array_lsearch_ptr_idx_i
                - i_unreached
                - array_delete_i.7695
            - BranchSide:      'lib-event.c:1706,7'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7695
        - Branch String:   'lib-event.c:1706,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1706,7'
              BranchSideFuncs:
                - array_delete_i.7695
            - BranchSide:      'lib-event.c:1707,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'lib-event.c:1706,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1706,6'
              BranchSideFuncs:
                - array_delete_i.7695
            - BranchSide:      'lib-event.c:1707,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'lib-event.c:1706,7'
          Dst:             array_lsearch_ptr_idx_i
        - Src:             'lib-event.c:1707,3'
          Dst:             i_unreached
        - Src:             'lib-event.c:1708,2'
          Dst:             array_delete_i
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:244,2'
          Dst:             buffer_delete
    - functionName:    event_category_register_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1698
      functionLinenumberEnd: 1700
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_append_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1699,2'
          Dst:             array_append_i
    - functionName:    event_unregister_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1689
      functionLinenumberEnd: 1695
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         11
      ICount:          41
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - array_delete_i
        - array_lsearch_ptr_idx_i
        - i_unreached
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1692,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1692,7'
              BranchSideFuncs:
                - array_lsearch_ptr_idx_i
                - i_unreached
                - array_delete_i.7695
            - BranchSide:      'lib-event.c:1692,7'
              BranchSideFuncs:
                - i_unreached
                - array_delete_i.7695
        - Branch String:   'lib-event.c:1692,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1692,7'
              BranchSideFuncs:
                - array_delete_i.7695
            - BranchSide:      'lib-event.c:1693,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'lib-event.c:1692,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1692,6'
              BranchSideFuncs:
                - array_delete_i.7695
            - BranchSide:      'lib-event.c:1693,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'lib-event.c:1692,7'
          Dst:             array_lsearch_ptr_idx_i
        - Src:             'lib-event.c:1693,3'
          Dst:             i_unreached
        - Src:             'lib-event.c:1694,2'
          Dst:             array_delete_i
    - functionName:    event_register_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1684
      functionLinenumberEnd: 1686
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - callback
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_append_i
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1685,2'
          Dst:             array_append_i
    - functionName:    event_import_arg
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1585
      functionLinenumberEnd: 1650
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - _args
        - error_r
      BBCount:         35
      ICount:          238
      EdgeCount:       41
      CyclomaticComplexity: 8
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - event_category_find_registered
        - event_find_category
        - event_import_field
        - event_import_tv
        - event_set_source
        - i_strdup
        - p_free_internal
        - str_to_uint
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1591,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1593,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1597,35'
              BranchSideFuncs:
                - event_category_find_registered
                - array_is_created_i.7651
                - array_create_i.7637
                - event_find_category
                - array_append_i.7638
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1610,24'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1619,3'
              BranchSideFuncs:
                - p_free_internal.7661
                - i_strdup
            - BranchSide:      'lib-event.c:1625,7'
              BranchSideFuncs:
                - str_to_uint
                - event_set_source
            - BranchSide:      'lib-event.c:1642,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1642,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1642,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1642,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1642,7'
              BranchSideFuncs:
                - event_import_field
            - BranchSide:      'lib-event.c:1648,11'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1598,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1600,36'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1603,8'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_create_i.7637
                - event_find_category
                - array_append_i.7638
        - Branch String:   'lib-event.c:1603,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1604,4'
              BranchSideFuncs:
                - event_find_category
                - array_append_i.7638
            - BranchSide:      'lib-event.c:1605,28'
              BranchSideFuncs:
                - event_find_category
                - array_append_i.7638
        - Branch String:   'lib-event.c:1605,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1606,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1607,3'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1610,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1613,33'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1616,7'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1625,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1626,5'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1629,19'
              BranchSideFuncs:
                - str_to_uint
                - event_set_source
        - Branch String:   'lib-event.c:1629,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1630,5'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1633,20'
              BranchSideFuncs:
                - event_set_source
        - Branch String:   'lib-event.c:1643,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1644,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1645,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1597,4'
          Dst:             event_category_find_registered
        - Src:             'lib-event.c:1599,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1603,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1604,4'
          Dst:             array_create_i
        - Src:             'lib-event.c:1605,8'
          Dst:             event_find_category
        - Src:             'lib-event.c:1606,4'
          Dst:             array_append_i
        - Src:             'lib-event.c:1610,8'
          Dst:             event_import_tv
        - Src:             'lib-event.c:1612,15'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1619,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1620,25'
          Dst:             i_strdup
        - Src:             'lib-event.c:1629,7'
          Dst:             str_to_uint
        - Src:             'lib-event.c:1633,3'
          Dst:             event_set_source
        - Src:             'lib-event.c:1643,8'
          Dst:             event_import_field
    - functionName:    event_category_find_registered
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:797,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:797,2'
              BranchSideFuncs:
                - i_memcpy.7653
                - strcmp
            - BranchSide:      'lib-event.c:797,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7653
        - Branch String:   'lib-event.c:797,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:798,14'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:801,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:798,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:799,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:800,2'
              BranchSideFuncs:
                - strcmp
                - i_memcpy.7653
      Callsites:
        - Src:             'lib-event.c:797,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:798,7'
          Dst:             strcmp
    - functionName:    array_clear_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_set_used_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:191,2'
          Dst:             buffer_set_used_size
    - functionName:    event_import_unescaped
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1654
      functionLinenumberEnd: 1681
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - args
        - error_r
      BBCount:         16
      ICount:          99
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - array_clear_i
        - array_is_created_i
        - event_import_arg
        - event_import_tv
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1660,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1661,3'
              BranchSideFuncs:
                - array_clear_i.7704
                - event_import_tv
                - t_strdup_printf
                - event_import_arg
            - BranchSide:      'lib-event.c:1664,6'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
                - event_import_arg
        - Branch String:   'lib-event.c:1664,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1665,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1668,23'
              BranchSideFuncs:
                - event_import_tv
                - t_strdup_printf
                - event_import_arg
        - Branch String:   'lib-event.c:1668,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1669,56'
              BranchSideFuncs:
                - event_import_arg
            - BranchSide:      'lib-event.c:1672,7'
              BranchSideFuncs:
                - event_import_arg
        - Branch String:   'lib-event.c:1675,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1676,25'
              BranchSideFuncs:
                - event_import_arg
            - BranchSide:      'lib-event.c:1680,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:1676,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1677,4'
              BranchSideFuncs:
                - event_import_arg
            - BranchSide:      'lib-event.c:1678,7'
              BranchSideFuncs:
                - event_import_arg
      Callsites:
        - Src:             'lib-event.c:1660,6'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1661,3'
          Dst:             array_clear_i
        - Src:             'lib-event.c:1668,7'
          Dst:             event_import_tv
        - Src:             'lib-event.c:1669,14'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1676,8'
          Dst:             event_import_arg
    - functionName:    event_export_field_value
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1411
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - field
      BBCount:         14
      ICount:          148
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - array_get_i
        - net_ip2addr
        - str_append_c
        - str_append_tabescaped
        - str_printfa
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1374,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1374,2'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1376,3'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_tabescaped
                - str_append_c.7707
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1382,3'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
            - BranchSide:      'lib-event.c:1387,3'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
            - BranchSide:      'lib-event.c:1394,3'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_tabescaped
                - net_ip2addr
                - str_printfa
            - BranchSide:      'lib-event.c:1401,4'
              BranchSideFuncs:
                - array_get_i.7711
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
                - str_append_c.7707
                - str_append_tabescaped
        - Branch String:   'lib-event.c:1405,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1406,4'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1410,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1376,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1377,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1378,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1379,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1382,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1383,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1384,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1387,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1388,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1389,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1394,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1395,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1396,29'
          Dst:             net_ip2addr
        - Src:             'lib-event.c:1396,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1401,4'
          Dst:             array_get_i
        - Src:             'lib-event.c:1402,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1403,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1404,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1406,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1407,4'
          Dst:             str_append_tabescaped
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_send_abort
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1364
      functionLinenumberEnd: 1369
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         8
      ICount:          40
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - event_unref
        - p_free_internal
      functionUses:    76
      BranchProfiles:
        - Branch String:   'lib-event.c:1367,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1367,6'
              BranchSideFuncs:
                - event_unref
            - BranchSide:      'lib-event.c:1368,3'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'lib-event.c:1366,2'
          Dst:             p_free_internal
        - Src:             'lib-event.c:1368,3'
          Dst:             event_unref
    - functionName:    event_unref
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _event
      BBCount:         37
      ICount:          198
      EdgeCount:       44
      CyclomaticComplexity: 9
      functionsReached:
        - event_call_callbacks_noargs
        - event_unref
        - i_panic
        - p_free_internal
        - pool_unref
      functionUses:    20
      BranchProfiles:
        - Branch String:   'lib-event.c:480,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:481,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:482,3'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
                - p_free_internal.7661
                - i_panic
                - i_panic
        - Branch String:   'lib-event.c:484,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:484,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:485,8'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
                - p_free_internal.7661
                - i_panic
        - Branch String:   'lib-event.c:485,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:486,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:487,2'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
                - p_free_internal.7661
                - i_panic
        - Branch String:   'lib-event.c:487,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:487,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:489,30'
              BranchSideFuncs:
                - event_call_callbacks_noargs
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
                - p_free_internal.7661
        - Branch String:   'lib-event.c:491,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:492,26'
              BranchSideFuncs:
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
                - p_free_internal.7661
            - BranchSide:      'lib-event.c:493,6'
              BranchSideFuncs:
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
                - p_free_internal.7661
        - Branch String:   'lib-event.c:493,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:494,3'
              BranchSideFuncs:
                - p_free_internal.7661
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
            - BranchSide:      'lib-event.c:495,2'
              BranchSideFuncs:
                - p_free_internal.7661
                - event_unref
                - pool_unref.7720
        - Branch String:   'lib-event.c:498,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:498,2'
              BranchSideFuncs:
                - pool_unref.7720
            - BranchSide:      'lib-event.c:498,2'
              BranchSideFuncs:
                - pool_unref.7720
        - Branch String:   'lib-event.c:498,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:498,2'
              BranchSideFuncs:
                - pool_unref.7720
            - BranchSide:      'lib-event.c:499,14'
              BranchSideFuncs:
                - pool_unref.7720
      Callsites:
        - Src:             'lib-event.c:484,2'
          Dst:             i_panic
        - Src:             'lib-event.c:487,2'
          Dst:             i_panic
        - Src:             'lib-event.c:489,2'
          Dst:             event_call_callbacks_noargs
        - Src:             'lib-event.c:494,3'
          Dst:             p_free_internal
        - Src:             'lib-event.c:495,2'
          Dst:             p_free_internal
        - Src:             'lib-event.c:496,2'
          Dst:             event_unref
        - Src:             'lib-event.c:499,2'
          Dst:             pool_unref
    - functionName:    event_call_callbacks_noargs
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - type
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_call_callbacks
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:161,8'
          Dst:             event_call_callbacks
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:176,6'
          Branch Sides:
            - BranchSide:      './mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    event_call_callbacks
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - type
        - ctx
        - fmt
        - args
      BBCount:         21
      ICount:          135
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - i_memcpy
        - i_panic
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:134,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:135,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:137,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
        - Branch String:   'lib-event.c:137,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:137,2'
              BranchSideFuncs:
                - i_memcpy.7653
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'lib-event.c:137,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7653
                - i_panic
        - Branch String:   'lib-event.c:137,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:140,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_memcpy.7653
                - i_panic
            - BranchSide:      'lib-event.c:148,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:142,5'
          Branch Sides:
            - BranchSide:      'lib-event.c:142,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:142,5'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
        - Branch String:   'lib-event.c:143,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:145,4'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:147,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
                - i_memcpy.7653
      Callsites:
        - Src:             'lib-event.c:137,2'
          Dst:             i_memcpy
        - Src:             'lib-event.c:140,3'
          Dst:             t_push
        - Src:             'lib-event.c:142,5'
          Dst:             t_pop
        - Src:             'lib-event.c:142,5'
          Dst:             i_panic
    - functionName:    event_vsend
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1361
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - ctx
        - fmt
        - args
      BBCount:         21
      ICount:          125
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - event_add_int
        - event_call_callbacks
        - event_send_abort
        - get_self_rusage
        - i_gettimeofday
        - i_log_typev
        - timeval_diff_usecs
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-event.c:1346,42'
          Branch Sides:
            - BranchSide:      'lib-event.c:1347,6'
              BranchSideFuncs:
                - get_self_rusage
                - timeval_diff_usecs
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1349,3'
              BranchSideFuncs:
                - get_self_rusage
                - timeval_diff_usecs
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
        - Branch String:   'lib-event.c:1346,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1349,3'
              BranchSideFuncs:
                - get_self_rusage
                - timeval_diff_usecs
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1354,27'
              BranchSideFuncs:
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
        - Branch String:   'lib-event.c:1352,42'
          Branch Sides:
            - BranchSide:      'lib-event.c:1352,54'
              BranchSideFuncs:
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1352,3'
              BranchSideFuncs:
                - event_add_int
                - event_call_callbacks
                - event_send_abort
                - i_log_typev
        - Branch String:   'lib-event.c:1354,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1354,6'
              BranchSideFuncs:
                - event_send_abort
                - i_log_typev
            - BranchSide:      'lib-event.c:1356,7'
              BranchSideFuncs:
                - event_send_abort
                - i_log_typev
        - Branch String:   'lib-event.c:1356,35'
          Branch Sides:
            - BranchSide:      'lib-event.c:1357,7'
              BranchSideFuncs:
                - i_log_typev
                - event_send_abort
            - BranchSide:      'lib-event.c:1358,16'
              BranchSideFuncs:
                - i_log_typev
                - event_send_abort
        - Branch String:   'lib-event.c:1356,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:1358,16'
              BranchSideFuncs:
                - i_log_typev
                - event_send_abort
            - BranchSide:      'lib-event.c:1359,2'
              BranchSideFuncs:
                - event_send_abort
      Callsites:
        - Src:             'lib-event.c:1343,2'
          Dst:             i_gettimeofday
        - Src:             'lib-event.c:1349,3'
          Dst:             get_self_rusage
        - Src:             'lib-event.c:1350,21'
          Dst:             timeval_diff_usecs
        - Src:             'lib-event.c:1352,3'
          Dst:             event_add_int
        - Src:             'lib-event.c:1354,6'
          Dst:             event_call_callbacks
        - Src:             'lib-event.c:1358,4'
          Dst:             i_log_typev
        - Src:             'lib-event.c:1360,2'
          Dst:             event_send_abort
    - functionName:    event_send
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1332
      functionLinenumberEnd: 1338
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - ctx
        - fmt
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_vsend
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1336,2'
          Dst:             event_vsend
    - functionName:    event_categories_iterate_deinit
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1318
      functionLinenumberEnd: 1328
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _iter
      BBCount:         7
      ICount:          43
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_destroy
        - hash_table_iterate_deinit
        - p_free_internal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1321,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1322,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1323,3'
              BranchSideFuncs:
                - hash_table_iterate_deinit
                - hash_table_destroy
                - p_free_internal.7661
      Callsites:
        - Src:             'lib-event.c:1325,2'
          Dst:             hash_table_iterate_deinit
        - Src:             'lib-event.c:1326,2'
          Dst:             hash_table_destroy
        - Src:             'lib-event.c:1327,2'
          Dst:             p_free_internal
    - functionName:    event_categories_iterate
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1315
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - iter
        - cat_r
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_iterate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1310,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1311,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1314,9'
              BranchSideFuncs:
                - hash_table_iterate
      Callsites:
        - Src:             'lib-event.c:1314,9'
          Dst:             hash_table_iterate
    - functionName:    insert_category
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1271
      functionLinenumberEnd: 1278
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - hash
        - cat
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_table_update
        - insert_category
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:1276,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1276,6'
              BranchSideFuncs:
                - insert_category
            - BranchSide:      'lib-event.c:1277,25'
              BranchSideFuncs:
                - insert_category
      Callsites:
        - Src:             'lib-event.c:1273,2'
          Dst:             hash_table_update
        - Src:             'lib-event.c:1277,3'
          Dst:             insert_category
    - functionName:    event_categories_iterate_init
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1282
      functionLinenumberEnd: 1303
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         10
      ICount:          85
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - event_get_categories
        - hash_table_create_direct
        - hash_table_iterate_init
        - insert_category
        - malloc_multiply_check
        - p_malloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1288,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1289,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1291,9'
              BranchSideFuncs:
                - malloc_multiply_check.7680
                - p_malloc.7681
                - hash_table_create_direct
                - hash_table_iterate_init
                - insert_category
        - Branch String:   'lib-event.c:1297,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1298,19'
              BranchSideFuncs:
                - insert_category
                - hash_table_iterate_init
            - BranchSide:      'lib-event.c:1300,15'
              BranchSideFuncs:
                - hash_table_iterate_init
      Callsites:
        - Src:             'lib-event.c:1287,9'
          Dst:             event_get_categories
        - Src:             'lib-event.c:1291,9'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:1291,9'
          Dst:             p_malloc
        - Src:             'lib-event.c:1293,2'
          Dst:             hash_table_create_direct
        - Src:             'lib-event.c:1298,3'
          Dst:             insert_category
        - Src:             'lib-event.c:1300,15'
          Dst:             hash_table_iterate_init
    - functionName:    event_get_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1260
      functionLinenumberEnd: 1266
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - count_r
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_get_i
        - array_is_created_i
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:1261,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1262,4'
              BranchSideFuncs:
                - array_get_i.7711
            - BranchSide:      'lib-event.c:1265,9'
              BranchSideFuncs:
                - array_get_i.7711
      Callsites:
        - Src:             'lib-event.c:1261,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1265,9'
          Dst:             array_get_i
    - functionName:    event_get_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1250
      functionLinenumberEnd: 1256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - count_r
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_get_i
        - array_is_created_i
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1251,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1252,4'
              BranchSideFuncs:
                - array_get_i.7711
            - BranchSide:      'lib-event.c:1255,9'
              BranchSideFuncs:
                - array_get_i.7711
      Callsites:
        - Src:             'lib-event.c:1251,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1255,9'
          Dst:             array_get_i
    - functionName:    event_get_last_duration
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1246
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - duration_usecs_r
      BBCount:         10
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - timeval_diff_usecs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1238,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1239,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1242,39'
              BranchSideFuncs:
                - timeval_diff_usecs
                - i_panic
        - Branch String:   'lib-event.c:1244,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1244,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:1245,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1242,19'
          Dst:             timeval_diff_usecs
        - Src:             'lib-event.c:1244,2'
          Dst:             i_panic
    - functionName:    event_get_last_send_time
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1230
      functionLinenumberEnd: 1232
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - tv_r
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_get_create_time
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - tv_r
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_get_pool
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1220
      functionLinenumberEnd: 1221
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_get_parent
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_strlist_copy_recursive
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1116
      functionLinenumberEnd: 1122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
        - key
      BBCount:         7
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - event_get_field
        - event_get_recursive_strlist
        - event_strlist_append
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:1119,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1119,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:1119,2'
              BranchSideFuncs:
                - event_get_recursive_strlist
      Callsites:
        - Src:             'lib-event.c:1117,2'
          Dst:             event_strlist_append
        - Src:             'lib-event.c:1118,30'
          Dst:             event_get_field
        - Src:             'lib-event.c:1119,2'
          Dst:             i_panic
        - Src:             'lib-event.c:1120,2'
          Dst:             event_get_recursive_strlist
    - functionName:    event_get_recursive_strlist
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 983
      functionLinenumberEnd: 1005
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - pool
        - key
        - dest
      BBCount:         24
      ICount:          147
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - array_append_i
        - array_lsearch_i
        - event_find_field_nonrecursive
        - event_get_recursive_strlist
        - i_memcpy
        - i_strcmp_p
        - p_strdup
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib-event.c:987,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:988,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:990,40'
              BranchSideFuncs:
                - event_find_field_nonrecursive
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7638
                - p_strdup
                - i_memcpy.7653
        - Branch String:   'lib-event.c:991,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:992,7'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7638
                - p_strdup
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:1004,30'
              BranchSideFuncs:
                - event_get_recursive_strlist
        - Branch String:   'lib-event.c:992,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:994,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:996,3'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7638
                - p_strdup
                - i_memcpy.7653
        - Branch String:   'lib-event.c:996,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:996,3'
              BranchSideFuncs:
                - i_memcpy.7653
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7638
                - p_strdup
            - BranchSide:      'lib-event.c:996,3'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - i_memcpy.7653
                - array_append_i.7638
                - p_strdup
        - Branch String:   'lib-event.c:996,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:997,8'
              BranchSideFuncs:
                - array_lsearch_i
                - event_get_recursive_strlist
                - i_memcpy.7653
                - array_append_i.7638
                - p_strdup
            - BranchSide:      'lib-event.c:1003,2'
              BranchSideFuncs:
                - event_get_recursive_strlist
        - Branch String:   'lib-event.c:997,8'
          Branch Sides:
            - BranchSide:      'lib-event.c:998,9'
              BranchSideFuncs:
                - array_append_i.7638
                - event_get_recursive_strlist
                - array_lsearch_i
                - i_memcpy.7653
                - p_strdup
            - BranchSide:      'lib-event.c:1002,3'
              BranchSideFuncs:
                - event_get_recursive_strlist
                - array_lsearch_i
                - array_append_i.7638
                - p_strdup
                - i_memcpy.7653
        - Branch String:   'lib-event.c:998,9'
          Branch Sides:
            - BranchSide:      'lib-event.c:999,21'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.7638
                - event_get_recursive_strlist
                - array_lsearch_i
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:1000,5'
              BranchSideFuncs:
                - array_append_i.7638
                - event_get_recursive_strlist
                - array_lsearch_i
                - p_strdup
                - i_memcpy.7653
      Callsites:
        - Src:             'lib-event.c:990,10'
          Dst:             event_find_field_nonrecursive
        - Src:             'lib-event.c:996,3'
          Dst:             i_memcpy
        - Src:             'lib-event.c:997,8'
          Dst:             array_lsearch_i
        - Src:             'lib-event.c:997,8'
          Dst:             i_strcmp_p
        - Src:             'lib-event.c:999,12'
          Dst:             p_strdup
        - Src:             'lib-event.c:1000,5'
          Dst:             array_append_i
        - Src:             'lib-event.c:1004,2'
          Dst:             event_get_recursive_strlist
    - functionName:    event_find_field_recursive_str
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1009
      functionLinenumberEnd: 1040
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
      BBCount:         12
      ICount:          102
      EdgeCount:       23
      CyclomaticComplexity: 13
      functionsReached:
        - array_create_i
        - event_find_field_recursive
        - event_get_global
        - event_get_recursive_strlist
        - i_unreached
        - net_ip2addr
        - p_array_const_string_join
        - pool_datastack_create
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1013,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1014,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1016,10'
              BranchSideFuncs:
                - pool_datastack_create
                - array_create_i.7637
                - event_get_recursive_strlist
                - event_get_global
                - event_get_recursive_strlist
                - p_array_const_string_join
                - net_ip2addr
                - t_strdup_printf
                - t_strdup_printf
                - i_unreached
        - Branch String:   'lib-event.c:1016,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:1018,10'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:1020,33'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1023,4'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-event.c:1026,23'
              BranchSideFuncs:
                - net_ip2addr
            - BranchSide:      'lib-event.c:1029,3'
              BranchSideFuncs:
                - pool_datastack_create
                - array_create_i.7637
                - event_get_recursive_strlist
                - event_get_global
                - event_get_recursive_strlist
                - p_array_const_string_join
            - BranchSide:      'lib-event.c:1039,2'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'lib-event.c:1012,10'
          Dst:             event_find_field_recursive
        - Src:             'lib-event.c:1020,10'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1022,10'
          Dst:             t_strdup_printf
        - Src:             'lib-event.c:1026,10'
          Dst:             net_ip2addr
        - Src:             'lib-event.c:1029,3'
          Dst:             pool_datastack_create
        - Src:             'lib-event.c:1029,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:1033,3'
          Dst:             event_get_recursive_strlist
        - Src:             'lib-event.c:1034,31'
          Dst:             event_get_global
        - Src:             'lib-event.c:1034,3'
          Dst:             event_get_recursive_strlist
        - Src:             'lib-event.c:1036,10'
          Dst:             p_array_const_string_join
        - Src:             'lib-event.c:1039,2'
          Dst:             i_unreached
    - functionName:    event_get_registered_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 820
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - count_r
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_get_i
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:820,9'
          Dst:             array_get_i
    - functionName:    event_get_ptr
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 781
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_is_created_i
        - strcmp
      functionUses:    13
      BranchProfiles:
        - Branch String:   'lib-event.c:784,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:785,3'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'lib-event.c:786,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'lib-event.c:786,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:787,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'lib-event.c:790,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:787,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:788,11'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:789,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'lib-event.c:784,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:787,7'
          Dst:             strcmp
    - functionName:    event_set_ptr
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 760
      functionLinenumberEnd: 778
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - key
        - value
      BBCount:         13
      ICount:          109
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_space_i
        - array_create_i
        - array_is_created_i
        - buffer_get_modifiable_data
        - p_strdup
        - strcmp
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib-event.c:763,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:764,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - array_append_space_i.7652
                - p_strdup
                - strcmp
            - BranchSide:      'lib-event.c:767,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - array_append_space_i.7652
                - p_strdup
                - strcmp
        - Branch String:   'lib-event.c:767,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:0,0'
              BranchSideFuncs:
                - strcmp
                - array_append_space_i.7652
                - p_strdup
            - BranchSide:      'lib-event.c:768,15'
              BranchSideFuncs:
                - strcmp
                - array_append_space_i.7652
                - p_strdup
        - Branch String:   'lib-event.c:768,8'
          Branch Sides:
            - BranchSide:      'lib-event.c:769,16'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:772,3'
              BranchSideFuncs:
                - array_append_space_i.7652
                - p_strdup
                - strcmp
      Callsites:
        - Src:             'lib-event.c:763,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:764,3'
          Dst:             array_create_i
        - Src:             'lib-event.c:767,3'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:768,8'
          Dst:             strcmp
        - Src:             'lib-event.c:774,6'
          Dst:             array_append_space_i
        - Src:             'lib-event.c:775,11'
          Dst:             p_strdup
    - functionName:    event_get_min_log_level
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 755
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_set_min_log_level
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - level
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_recalculate_debug_level
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:750,2'
          Dst:             event_recalculate_debug_level
    - functionName:    event_unset_log_message_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 713
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - callback
        - context
      BBCount:         11
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:714,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:714,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:715,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-event.c:715,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:715,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:715,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:714,2'
          Dst:             i_panic
        - Src:             'lib-event.c:715,2'
          Dst:             i_panic
    - functionName:    event_disable_callbacks
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_set_log_message_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - callback
        - context
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_set_log_prefix_callback
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - replace
        - callback
        - context
      BBCount:         8
      ICount:          71
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - p_free_internal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:683,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:684,3'
              BranchSideFuncs:
                - p_free_internal.7661
            - BranchSide:      'lib-event.c:686,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:684,3'
          Dst:             p_free_internal
    - functionName:    event_drop_parent_log_prefixes
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - event
        - count
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    event_reason_code_module_validate
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - module
      BBCount:         17
      ICount:          90
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __ctype_b_loc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:587,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:588,8'
              BranchSideFuncs:
                - __ctype_b_loc
            - BranchSide:      'lib-event.c:593,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:588,17'
          Branch Sides:
            - BranchSide:      'lib-event.c:588,21'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:589,4'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:588,30'
          Branch Sides:
            - BranchSide:      'lib-event.c:588,34'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:589,4'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:588,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:589,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:590,7'
              BranchSideFuncs:
                - __ctype_b_loc
        - Branch String:   'lib-event.c:590,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:591,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:592,2'
              BranchSideFuncs:
                - __ctype_b_loc
      Callsites:
        - Src:             'lib-event.c:590,7'
          Dst:             __ctype_b_loc
    - functionName:    event_reason_code_prefix
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - module
        - name_prefix
        - name
      BBCount:         25
      ICount:          159
      EdgeCount:       49
      CyclomaticComplexity: 26
      functionsReached:
        - event_reason_code_module_validate
        - i_panic
        - str_append
        - str_append_c
        - str_c
        - strlen
        - t_str_new
        - tolower
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:601,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:601,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:602,2'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7748
                - str_append_c.7707
                - str_append.7748
                - str_c
                - i_panic
                - str_append_c.7707
                - tolower
                - str_append_c.7707
                - i_panic
        - Branch String:   'lib-event.c:602,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:602,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:604,41'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7748
                - str_append_c.7707
                - str_append.7748
                - str_c
                - i_panic
                - str_append_c.7707
                - tolower
                - str_append_c.7707
        - Branch String:   'lib-event.c:604,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:606,27'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7748
                - str_append_c.7707
                - str_append.7748
                - str_c
                - i_panic
                - str_append_c.7707
                - tolower
                - str_append_c.7707
            - BranchSide:      'lib-event.c:608,41'
              BranchSideFuncs:
                - event_reason_code_module_validate
                - i_panic
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7748
                - str_append_c.7707
                - str_append.7748
                - str_c
                - i_panic
                - str_append_c.7707
                - tolower
                - str_append_c.7707
        - Branch String:   'lib-event.c:608,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:610,32'
              BranchSideFuncs:
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7748
                - str_append_c.7707
                - str_append.7748
                - str_c
                - i_panic
                - str_append_c.7707
                - tolower
                - str_append_c.7707
            - BranchSide:      'lib-event.c:613,35'
              BranchSideFuncs:
                - strlen
                - strlen
                - strlen
                - t_str_new
                - str_append.7748
                - str_append_c.7707
                - str_append.7748
                - str_c
                - i_panic
                - str_append_c.7707
                - tolower
                - str_append_c.7707
        - Branch String:   'lib-event.c:619,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:620,12'
              BranchSideFuncs:
                - i_panic
                - str_append_c.7707
                - str_c
                - tolower
                - str_append_c.7707
            - BranchSide:      'lib-event.c:634,15'
              BranchSideFuncs:
                - str_c
        - Branch String:   'lib-event.c:620,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:623,4'
              BranchSideFuncs:
                - str_append_c.7707
                - str_c
                - i_panic
                - tolower
                - str_append_c.7707
            - BranchSide:      'lib-event.c:623,4'
              BranchSideFuncs:
                - str_append_c.7707
                - str_c
                - i_panic
                - tolower
                - str_append_c.7707
            - BranchSide:      'lib-event.c:628,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:630,4'
              BranchSideFuncs:
                - tolower
                - str_append_c.7707
                - str_c
                - i_panic
                - str_append_c.7707
      Callsites:
        - Src:             'lib-event.c:601,2'
          Dst:             i_panic
        - Src:             'lib-event.c:602,2'
          Dst:             i_panic
        - Src:             'lib-event.c:604,7'
          Dst:             event_reason_code_module_validate
        - Src:             'lib-event.c:605,3'
          Dst:             i_panic
        - Src:             'lib-event.c:608,7'
          Dst:             event_reason_code_module_validate
        - Src:             'lib-event.c:609,3'
          Dst:             i_panic
        - Src:             'lib-event.c:613,28'
          Dst:             strlen
        - Src:             'lib-event.c:614,7'
          Dst:             strlen
        - Src:             'lib-event.c:614,29'
          Dst:             strlen
        - Src:             'lib-event.c:613,18'
          Dst:             t_str_new
        - Src:             'lib-event.c:615,2'
          Dst:             str_append
        - Src:             'lib-event.c:616,2'
          Dst:             str_append_c
        - Src:             'lib-event.c:617,2'
          Dst:             str_append
        - Src:             'lib-event.c:623,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:626,4'
          Dst:             i_panic
        - Src:             'lib-event.c:630,4'
          Dst:             tolower
        - Src:             'lib-event.c:630,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:634,9'
          Dst:             str_c
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_reason_code
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - module
        - name
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_reason_code_prefix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:580,9'
          Dst:             event_reason_code_prefix
    - functionName:    event_reason_end
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _reason
      BBCount:         11
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - event_pop_global
        - event_unref
        - i_panic
        - p_free_internal
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib-event.c:568,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:569,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:570,19'
              BranchSideFuncs:
                - event_pop_global
                - event_unref
                - p_free_internal.7661
                - i_panic
        - Branch String:   'lib-event.c:573,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:573,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:574,15'
              BranchSideFuncs:
                - event_unref
                - p_free_internal.7661
      Callsites:
        - Src:             'lib-event.c:570,2'
          Dst:             event_pop_global
        - Src:             'lib-event.c:573,2'
          Dst:             i_panic
        - Src:             'lib-event.c:574,2'
          Dst:             event_unref
        - Src:             'lib-event.c:575,2'
          Dst:             p_free_internal
    - functionName:    event_pop_global
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         25
      ICount:          118
      EdgeCount:       27
      CyclomaticComplexity: 4
      functionsReached:
        - array_count_i
        - array_delete_i
        - array_get_i
        - array_is_created_i
        - i_panic
        - io_loop_get_active_global_root
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:522,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:522,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:523,2'
              BranchSideFuncs:
                - io_loop_get_active_global_root
                - array_is_created_i.7651
                - array_count_i.7713
                - array_get_i.7711
                - array_delete_i.7695
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'lib-event.c:523,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:523,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:527,2'
              BranchSideFuncs:
                - io_loop_get_active_global_root
                - array_is_created_i.7651
                - array_count_i.7713
                - array_get_i.7711
                - array_delete_i.7695
                - i_panic
                - i_panic
        - Branch String:   'lib-event.c:527,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:527,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:529,7'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_count_i.7713
                - array_get_i.7711
                - array_delete_i.7695
                - i_panic
        - Branch String:   'lib-event.c:529,45'
          Branch Sides:
            - BranchSide:      'lib-event.c:530,6'
              BranchSideFuncs:
                - array_count_i.7713
                - array_get_i.7711
                - array_delete_i.7695
                - i_panic
            - BranchSide:      'lib-event.c:531,24'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:529,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:531,24'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:535,4'
              BranchSideFuncs:
                - array_get_i.7711
                - array_delete_i.7695
                - i_panic
        - Branch String:   'lib-event.c:537,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:537,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:538,26'
              BranchSideFuncs:
                - array_delete_i.7695
      Callsites:
        - Src:             'lib-event.c:522,2'
          Dst:             i_panic
        - Src:             'lib-event.c:523,2'
          Dst:             i_panic
        - Src:             'lib-event.c:527,2'
          Dst:             io_loop_get_active_global_root
        - Src:             'lib-event.c:527,2'
          Dst:             i_panic
        - Src:             'lib-event.c:529,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:530,6'
          Dst:             array_count_i
        - Src:             'lib-event.c:535,4'
          Dst:             array_get_i
        - Src:             'lib-event.c:537,3'
          Dst:             i_panic
        - Src:             'lib-event.c:539,3'
          Dst:             array_delete_i
    - functionName:    event_reason_begin
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - reason_code
        - source_filename
        - source_linenum
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_create
        - event_get_global
        - event_push_global
        - event_strlist_append
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:556,11'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:556,11'
          Dst:             p_malloc
        - Src:             'lib-event.c:557,31'
          Dst:             event_get_global
        - Src:             'lib-event.c:557,18'
          Dst:             event_create
        - Src:             'lib-event.c:559,2'
          Dst:             event_strlist_append
        - Src:             'lib-event.c:560,2'
          Dst:             event_push_global
    - functionName:    event_create
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - parent
        - source_filename
        - source_linenum
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_call_callbacks_noargs
        - event_create_internal
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:437,10'
          Dst:             event_create_internal
        - Src:             'lib-event.c:438,8'
          Dst:             event_call_callbacks_noargs
    - functionName:    event_push_global
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         13
      ICount:          54
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:509,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:509,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:511,6'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_create_i.7637
                - array_append_i.7638
        - Branch String:   'lib-event.c:511,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:511,6'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_create_i.7637
                - array_append_i.7638
            - BranchSide:      'lib-event.c:512,8'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_create_i.7637
                - array_append_i.7638
        - Branch String:   'lib-event.c:512,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:513,4'
              BranchSideFuncs:
                - array_append_i.7638
            - BranchSide:      'lib-event.c:514,3'
              BranchSideFuncs:
                - array_append_i.7638
      Callsites:
        - Src:             'lib-event.c:509,2'
          Dst:             i_panic
        - Src:             'lib-event.c:512,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:513,4'
          Dst:             array_create_i
        - Src:             'lib-event.c:514,3'
          Dst:             array_append_i
    - functionName:    event_create_internal
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - parent
        - source_filename
        - source_linenum
      BBCount:         11
      ICount:          118
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - event_copy_parent_defaults
        - event_ref
        - i_gettimeofday
        - malloc_multiply_check
        - p_malloc
        - p_strdup
        - pool_alloconly_create
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-event.c:422,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:423,19'
              BranchSideFuncs:
                - event_ref
                - event_copy_parent_defaults
            - BranchSide:      'lib-event.c:427,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:427,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:427,2'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:427,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:410,16'
          Dst:             pool_alloconly_create
        - Src:             'lib-event.c:412,10'
          Dst:             malloc_multiply_check
        - Src:             'lib-event.c:412,10'
          Dst:             p_malloc
        - Src:             'lib-event.c:418,2'
          Dst:             i_gettimeofday
        - Src:             'lib-event.c:419,27'
          Dst:             p_strdup
        - Src:             'lib-event.c:424,3'
          Dst:             event_ref
        - Src:             'lib-event.c:425,3'
          Dst:             event_copy_parent_defaults
    - functionName:    event_ref
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         7
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib-event.c:470,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:470,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:470,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:470,2'
          Dst:             i_panic
    - functionName:    events_get_head
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_create_passthrough
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - parent
        - source_filename
        - source_linenum
      BBCount:         8
      ICount:          75
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - event_create
        - i_memcpy
        - i_panic
      functionUses:    16
      BranchProfiles:
        - Branch String:   'lib-event.c:447,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:448,7'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:463,28'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:448,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:450,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-event.c:454,17'
              BranchSideFuncs:
                - event_create
                - i_memcpy.7653
      Callsites:
        - Src:             'lib-event.c:450,4'
          Dst:             i_panic
        - Src:             'lib-event.c:454,4'
          Dst:             event_create
        - Src:             'lib-event.c:460,3'
          Dst:             i_memcpy
    - functionName:    replace_parent_ref
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - new
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - event_ref
        - event_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-event.c:291,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:292,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:294,6'
              BranchSideFuncs:
                - event_unref
                - event_ref
        - Branch String:   'lib-event.c:294,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:295,13'
              BranchSideFuncs:
                - event_ref
                - event_unref
            - BranchSide:      'lib-event.c:297,15'
              BranchSideFuncs:
                - event_unref
      Callsites:
        - Src:             'lib-event.c:295,3'
          Dst:             event_ref
        - Src:             'lib-event.c:297,2'
          Dst:             event_unref
    - functionName:    event_minimize
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
      BBCount:         43
      ICount:          225
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - array_is_created_i
        - event_dup
        - event_flatten_recurse
        - event_ref
        - replace_parent_ref
        - timeval_cmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:359,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:360,20'
              BranchSideFuncs:
                - event_ref
            - BranchSide:      'lib-event.c:363,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - timeval_cmp
        - Branch String:   'lib-event.c:364,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:365,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - timeval_cmp
            - BranchSide:      'lib-event.c:375,13'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
        - Branch String:   'lib-event.c:365,34'
          Branch Sides:
            - BranchSide:      'lib-event.c:366,20'
              BranchSideFuncs:
                - timeval_cmp
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:370,19'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
        - Branch String:   'lib-event.c:365,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:368,4'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - timeval_cmp
            - BranchSide:      'lib-event.c:370,19'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
        - Branch String:   'lib-event.c:376,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:377,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:389,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:377,34'
          Branch Sides:
            - BranchSide:      'lib-event.c:378,9'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_is_created_i.7651
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:384,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:378,40'
          Branch Sides:
            - BranchSide:      'lib-event.c:379,8'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_is_created_i.7651
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:380,9'
              BranchSideFuncs:
                - array_is_created_i.7651
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
        - Branch String:   'lib-event.c:379,8'
          Branch Sides:
            - BranchSide:      'lib-event.c:379,8'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:380,9'
              BranchSideFuncs:
                - array_is_created_i.7651
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
        - Branch String:   'lib-event.c:379,38'
          Branch Sides:
            - BranchSide:      'lib-event.c:380,9'
              BranchSideFuncs:
                - array_is_created_i.7651
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:384,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:380,44'
          Branch Sides:
            - BranchSide:      'lib-event.c:381,8'
              BranchSideFuncs:
                - array_is_created_i.7651
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:382,4'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
        - Branch String:   'lib-event.c:381,8'
          Branch Sides:
            - BranchSide:      'lib-event.c:381,8'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:382,4'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
        - Branch String:   'lib-event.c:377,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:382,4'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
                - array_is_created_i.7651
            - BranchSide:      'lib-event.c:384,16'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
        - Branch String:   'lib-event.c:389,39'
          Branch Sides:
            - BranchSide:      'lib-event.c:390,7'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
                - event_ref
            - BranchSide:      'lib-event.c:393,24'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
        - Branch String:   'lib-event.c:389,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:391,20'
              BranchSideFuncs:
                - event_ref
            - BranchSide:      'lib-event.c:393,24'
              BranchSideFuncs:
                - event_dup
                - event_flatten_recurse
                - replace_parent_ref
                - replace_parent_ref
      Callsites:
        - Src:             'lib-event.c:360,10'
          Dst:             event_ref
        - Src:             'lib-event.c:366,7'
          Dst:             timeval_cmp
        - Src:             'lib-event.c:378,9'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:379,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:380,9'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:381,8'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:391,10'
          Dst:             event_ref
        - Src:             'lib-event.c:393,14'
          Dst:             event_dup
        - Src:             'lib-event.c:396,2'
          Dst:             event_flatten_recurse
        - Src:             'lib-event.c:397,2'
          Dst:             replace_parent_ref
        - Src:             'lib-event.c:400,2'
          Dst:             replace_parent_ref
    - functionName:    event_dup
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - source
      BBCount:         5
      ICount:          58
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - event_create_internal
        - event_export
        - event_import
        - i_panic
        - str_c
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:241,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:242,48'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:243,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:236,3'
          Dst:             event_create_internal
        - Src:             'lib-event.c:238,18'
          Dst:             t_str_new
        - Src:             'lib-event.c:240,2'
          Dst:             event_export
        - Src:             'lib-event.c:241,25'
          Dst:             str_c
        - Src:             'lib-event.c:241,7'
          Dst:             event_import
        - Src:             'lib-event.c:242,42'
          Dst:             str_c
        - Src:             'lib-event.c:242,3'
          Dst:             i_panic
    - functionName:    event_flatten_recurse
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dst
        - src
        - limit
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_copy_categories
        - event_copy_fields
        - event_flatten_recurse
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib-event.c:256,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:256,6'
              BranchSideFuncs:
                - event_flatten_recurse
                - event_copy_categories
                - event_copy_fields
            - BranchSide:      'lib-event.c:257,25'
              BranchSideFuncs:
                - event_flatten_recurse
                - event_copy_categories
                - event_copy_fields
      Callsites:
        - Src:             'lib-event.c:257,3'
          Dst:             event_flatten_recurse
        - Src:             'lib-event.c:259,2'
          Dst:             event_copy_categories
        - Src:             'lib-event.c:260,2'
          Dst:             event_copy_fields
    - functionName:    event_copy_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - to
        - from
      BBCount:         7
      ICount:          53
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - event_add_category
        - event_get_categories
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:170,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:171,22'
              BranchSideFuncs:
                - event_add_category
            - BranchSide:      'lib-event.c:172,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:169,3'
          Dst:             event_get_categories
        - Src:             'lib-event.c:171,3'
          Dst:             event_add_category
    - functionName:    event_copy_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - to
        - from
      BBCount:         21
      ICount:          156
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - array_get_i
        - array_is_created_i
        - event_add_int
        - event_add_ip
        - event_add_str
        - event_add_timeval
        - event_strlist_append
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:180,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:181,3'
              BranchSideFuncs:
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:182,2'
              BranchSideFuncs:
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
        - Branch String:   'lib-event.c:182,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:182,2'
              BranchSideFuncs:
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:183,11'
              BranchSideFuncs:
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
        - Branch String:   'lib-event.c:183,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:185,18'
              BranchSideFuncs:
                - event_add_str
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
            - BranchSide:      'lib-event.c:188,18'
              BranchSideFuncs:
                - event_add_int
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_str
            - BranchSide:      'lib-event.c:191,22'
              BranchSideFuncs:
                - event_add_timeval
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:194,17'
              BranchSideFuncs:
                - event_add_ip
                - array_get_i.7711
                - event_strlist_append
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:197,13'
              BranchSideFuncs:
                - array_get_i.7711
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
                - event_strlist_append
            - BranchSide:      'lib-event.c:202,4'
              BranchSideFuncs:
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
        - Branch String:   'lib-event.c:198,4'
          Branch Sides:
            - BranchSide:      'lib-event.c:199,26'
              BranchSideFuncs:
                - event_strlist_append
                - array_get_i.7711
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
            - BranchSide:      'lib-event.c:200,4'
              BranchSideFuncs:
                - array_get_i.7711
                - event_strlist_append
                - event_add_ip
                - event_add_timeval
                - event_add_int
                - event_add_str
      Callsites:
        - Src:             'lib-event.c:180,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:185,4'
          Dst:             event_add_str
        - Src:             'lib-event.c:188,4'
          Dst:             event_add_int
        - Src:             'lib-event.c:191,4'
          Dst:             event_add_timeval
        - Src:             'lib-event.c:194,4'
          Dst:             event_add_ip
        - Src:             'lib-event.c:197,13'
          Dst:             array_get_i
        - Src:             'lib-event.c:199,5'
          Dst:             event_strlist_append
    - functionName:    event_export
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1459
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - dest
      BBCount:         32
      ICount:          247
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - array_is_created_i
        - event_export_field_value
        - i_memcpy
        - str_append_c
        - str_append_tabescaped
        - str_printfa
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-event.c:1421,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1422,3'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
                - str_append_c.7707
                - str_append_c.7707
            - BranchSide:      'lib-event.c:1427,6'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
                - str_append_c.7707
                - str_append_c.7707
        - Branch String:   'lib-event.c:1427,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1428,3'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_c.7707
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
            - BranchSide:      'lib-event.c:1431,6'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - str_printfa
        - Branch String:   'lib-event.c:1431,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1432,15'
              BranchSideFuncs:
                - str_printfa
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1437,6'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
        - Branch String:   'lib-event.c:1437,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1438,3'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:1443,6'
              BranchSideFuncs:
                - array_is_created_i.7651
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
        - Branch String:   'lib-event.c:1443,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1445,3'
              BranchSideFuncs:
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:1452,6'
              BranchSideFuncs:
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
        - Branch String:   'lib-event.c:1445,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1445,3'
              BranchSideFuncs:
                - i_memcpy.7653
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
            - BranchSide:      'lib-event.c:1445,3'
              BranchSideFuncs:
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - i_memcpy.7653
        - Branch String:   'lib-event.c:1445,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1446,4'
              BranchSideFuncs:
                - str_append_c.7707
                - str_append_c.7707
                - str_append_tabescaped
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
                - i_memcpy.7653
            - BranchSide:      'lib-event.c:1450,2'
              BranchSideFuncs:
                - array_is_created_i.7651
                - str_append_c.7707
                - event_export_field_value
        - Branch String:   'lib-event.c:1452,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:1452,6'
              BranchSideFuncs:
                - str_append_c.7707
                - event_export_field_value
            - BranchSide:      'lib-event.c:1454,3'
              BranchSideFuncs:
                - str_append_c.7707
                - event_export_field_value
        - Branch String:   'lib-event.c:1454,3'
          Branch Sides:
            - BranchSide:      'lib-event.c:1455,4'
              BranchSideFuncs:
                - str_append_c.7707
                - event_export_field_value
            - BranchSide:      'lib-event.c:1458,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-event.c:1416,2'
          Dst:             str_printfa
        - Src:             'lib-event.c:1422,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1423,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1424,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1425,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1428,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1429,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1432,3'
          Dst:             str_printfa
        - Src:             'lib-event.c:1438,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1439,3'
          Dst:             str_append_c
        - Src:             'lib-event.c:1440,3'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1443,6'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1445,3'
          Dst:             i_memcpy
        - Src:             'lib-event.c:1446,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1447,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1448,4'
          Dst:             str_append_tabescaped
        - Src:             'lib-event.c:1452,6'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:1455,4'
          Dst:             str_append_c
        - Src:             'lib-event.c:1456,4'
          Dst:             event_export_field_value
    - functionName:    event_import
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 1462
      functionLinenumberEnd: 1464
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - str
        - error_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - event_import_unescaped
        - t_strsplit_tabescaped
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-event.c:1463,39'
          Dst:             t_strsplit_tabescaped
        - Src:             'lib-event.c:1463,9'
          Dst:             event_import_unescaped
    - functionName:    event_flatten
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - src
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - event_create_internal
        - event_flatten_recurse
        - event_ref
        - event_set_name
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:269,26'
          Branch Sides:
            - BranchSide:      'lib-event.c:269,29'
              BranchSideFuncs:
                - event_create_internal
                - event_set_name
                - event_flatten_recurse
                - event_flatten_recurse
                - event_ref
            - BranchSide:      'lib-event.c:274,36'
              BranchSideFuncs:
                - event_create_internal
                - event_set_name
                - event_flatten_recurse
                - event_flatten_recurse
        - Branch String:   'lib-event.c:269,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:270,20'
              BranchSideFuncs:
                - event_ref
            - BranchSide:      'lib-event.c:274,36'
              BranchSideFuncs:
                - event_create_internal
                - event_set_name
                - event_flatten_recurse
                - event_flatten_recurse
        - Branch String:   'lib-event.c:278,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:279,25'
              BranchSideFuncs:
                - event_flatten_recurse
                - event_flatten_recurse
            - BranchSide:      'lib-event.c:280,24'
              BranchSideFuncs:
                - event_flatten_recurse
      Callsites:
        - Src:             'lib-event.c:270,10'
          Dst:             event_ref
        - Src:             'lib-event.c:274,8'
          Dst:             event_create_internal
        - Src:             'lib-event.c:276,8'
          Dst:             event_set_name
        - Src:             'lib-event.c:279,3'
          Dst:             event_flatten_recurse
        - Src:             'lib-event.c:280,2'
          Dst:             event_flatten_recurse
    - functionName:    event_has_all_fields
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - other
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - event_find_field_nonrecursive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:224,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:225,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:226,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_field_nonrecursive
        - Branch String:   'lib-event.c:226,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:227,37'
              BranchSideFuncs:
                - event_find_field_nonrecursive
            - BranchSide:      'lib-event.c:230,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:227,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:228,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-event.c:229,2'
              BranchSideFuncs:
                - event_find_field_nonrecursive
      Callsites:
        - Src:             'lib-event.c:224,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:226,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:227,7'
          Dst:             event_find_field_nonrecursive
    - functionName:    event_has_all_categories
      functionSourceFile: '/src/dovecot/src/lib/lib-event.c'
      linkageType:     externalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - event
        - other
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_is_created_i
        - buffer_get_modifiable_data
        - event_find_category
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-event.c:210,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:211,3'
              BranchSideFuncs:
                - array_is_created_i.7651
                - buffer_get_modifiable_data
                - event_find_category
            - BranchSide:      'lib-event.c:212,7'
              BranchSideFuncs:
                - array_is_created_i.7651
                - buffer_get_modifiable_data
                - event_find_category
        - Branch String:   'lib-event.c:212,6'
          Branch Sides:
            - BranchSide:      'lib-event.c:213,3'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_category
            - BranchSide:      'lib-event.c:214,2'
              BranchSideFuncs:
                - buffer_get_modifiable_data
                - event_find_category
        - Branch String:   'lib-event.c:214,2'
          Branch Sides:
            - BranchSide:      'lib-event.c:215,28'
              BranchSideFuncs:
                - event_find_category
            - BranchSide:      'lib-event.c:218,2'
              BranchSideFuncs: []
        - Branch String:   'lib-event.c:215,7'
          Branch Sides:
            - BranchSide:      'lib-event.c:216,4'
              BranchSideFuncs:
                - event_find_category
            - BranchSide:      'lib-event.c:217,2'
              BranchSideFuncs:
                - event_find_category
      Callsites:
        - Src:             'lib-event.c:210,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:212,7'
          Dst:             array_is_created_i
        - Src:             'lib-event.c:214,2'
          Dst:             buffer_get_modifiable_data
        - Src:             'lib-event.c:215,8'
          Dst:             event_find_category
    - functionName:    sig_ignore
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - si
        - context
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sig_handler
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - si
        - context
      BBCount:         24
      ICount:          126
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - lib_signal_delayed
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:156,16'
          Branch Sides:
            - BranchSide:      'lib-signals.c:156,19'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:157,3'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:156,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:157,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:159,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signal_delayed
        - Branch String:   'lib-signals.c:159,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:159,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signal_delayed
            - BranchSide:      'lib-signals.c:160,22'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signal_delayed
        - Branch String:   'lib-signals.c:159,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:159,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signal_delayed
            - BranchSide:      'lib-signals.c:160,22'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signal_delayed
        - Branch String:   'lib-signals.c:159,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:160,22'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signal_delayed
            - BranchSide:      'lib-signals.c:165,16'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - lib_signal_delayed
        - Branch String:   'lib-signals.c:166,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:167,7'
              BranchSideFuncs:
                - lib_signal_delayed
                - __errno_location
            - BranchSide:      'lib-signals.c:172,10'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'lib-signals.c:167,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:168,4'
              BranchSideFuncs:
                - __errno_location
                - lib_signal_delayed
            - BranchSide:      'lib-signals.c:170,23'
              BranchSideFuncs:
                - lib_signal_delayed
                - __errno_location
      Callsites:
        - Src:             'lib-signals.c:165,16'
          Dst:             __errno_location
        - Src:             'lib-signals.c:170,4'
          Dst:             lib_signal_delayed
        - Src:             'lib-signals.c:172,2'
          Dst:             __errno_location
    - functionName:    lib_signal_delayed
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - si
      BBCount:         11
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - lib_signals_syscall_error
        - write
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:118,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:119,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:121,18'
              BranchSideFuncs:
                - write
                - lib_signals_syscall_error
        - Branch String:   'lib-signals.c:122,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:122,6'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:123,8'
              BranchSideFuncs:
                - write
                - lib_signals_syscall_error
        - Branch String:   'lib-signals.c:124,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:125,4'
              BranchSideFuncs:
                - lib_signals_syscall_error
            - BranchSide:      'lib-signals.c:128,24'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-signals.c:124,7'
          Dst:             write
        - Src:             'lib-signals.c:125,4'
          Dst:             lib_signals_syscall_error
    - functionName:    lib_signals_syscall_error
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prefix
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - dec2str_buf
        - i_memcpy
        - strlen
        - write_full
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:687,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:687,6'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:690,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-signals.c:678,37'
          Dst:             __errno_location
        - Src:             'lib-signals.c:678,14'
          Dst:             dec2str_buf
        - Src:             'lib-signals.c:680,22'
          Dst:             strlen
        - Src:             'lib-signals.c:681,25'
          Dst:             strlen
        - Src:             'lib-signals.c:684,2'
          Dst:             i_memcpy
        - Src:             'lib-signals.c:685,2'
          Dst:             i_memcpy
        - Src:             'lib-signals.c:687,6'
          Dst:             write_full
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7881
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.7881
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:244,2'
          Dst:             buffer_delete
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signal_shadow
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - si
      BBCount:         17
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - array_create_i
        - array_get_i
        - array_idx_set_i
        - array_is_created_i
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:315,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:316,3'
              BranchSideFuncs:
                - array_get_i.7884
                - array_idx_set_i
                - i_panic
            - BranchSide:      'lib-signals.c:317,8'
              BranchSideFuncs:
                - array_get_i.7884
                - array_idx_set_i
                - i_panic
        - Branch String:   'lib-signals.c:318,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:318,2'
              BranchSideFuncs:
                - array_idx_set_i
                - i_panic
            - BranchSide:      'lib-signals.c:319,3'
              BranchSideFuncs:
                - array_idx_set_i
                - i_panic
        - Branch String:   'lib-signals.c:319,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:319,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:320,7'
              BranchSideFuncs:
                - array_idx_set_i
                - i_panic
        - Branch String:   'lib-signals.c:320,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:321,4'
              BranchSideFuncs:
                - array_idx_set_i
            - BranchSide:      'lib-signals.c:322,2'
              BranchSideFuncs:
                - array_idx_set_i
                - i_panic
      Callsites:
        - Src:             'lib-signals.c:315,7'
          Dst:             array_is_created_i
        - Src:             'lib-signals.c:316,3'
          Dst:             array_create_i
        - Src:             'lib-signals.c:317,8'
          Dst:             array_get_i
        - Src:             'lib-signals.c:319,3'
          Dst:             i_panic
        - Src:             'lib-signals.c:323,2'
          Dst:             array_idx_set_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signal_handle_shadowed
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         38
      ICount:          201
      EdgeCount:       47
      CyclomaticComplexity: 11
      functionsReached:
        - array_count_i
        - array_delete_i
        - array_get_i
        - array_is_created_i
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:261,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:258,19'
              BranchSideFuncs:
                - array_is_created_i.7886
                - array_count_i.7885
                - array_get_i.7884
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:261,7'
              BranchSideFuncs:
                - array_is_created_i.7886
                - array_count_i.7885
                - array_get_i.7884
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:261,51'
          Branch Sides:
            - BranchSide:      'lib-signals.c:262,6'
              BranchSideFuncs:
                - array_count_i.7885
                - array_get_i.7884
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:263,3'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:261,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:263,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:265,8'
              BranchSideFuncs:
                - array_get_i.7884
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:266,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:266,2'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:268,8'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:270,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:270,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:271,28'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:271,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:273,4'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:286,8'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:273,4'
          Branch Sides:
            - BranchSide:      'lib-signals.c:273,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:274,8'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:274,35'
          Branch Sides:
            - BranchSide:      'lib-signals.c:275,9'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:276,5'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:274,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:276,5'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:277,8'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:277,20'
          Branch Sides:
            - BranchSide:      'lib-signals.c:278,8'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:283,4'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:277,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:279,14'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:283,4'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:286,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:289,4'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:292,2'
              BranchSideFuncs:
                - array_delete_i.7883
                - array_get_i.7884
                - i_panic
                - i_panic
      Callsites:
        - Src:             'lib-signals.c:261,7'
          Dst:             array_is_created_i
        - Src:             'lib-signals.c:262,6'
          Dst:             array_count_i
        - Src:             'lib-signals.c:265,8'
          Dst:             array_get_i
        - Src:             'lib-signals.c:270,3'
          Dst:             i_panic
        - Src:             'lib-signals.c:273,4'
          Dst:             i_panic
        - Src:             'lib-signals.c:289,4'
          Dst:             array_delete_i
        - Src:             'lib-signals.c:290,10'
          Dst:             array_get_i
    - functionName:    signal_read
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         47
      ICount:          250
      EdgeCount:       57
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - i_fatal
        - i_memcpy
        - i_panic
        - read
        - sigfillset
        - signal_handle_shadowed
        - signal_shadow
        - sigprocmask
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:335,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:336,19'
              BranchSideFuncs:
                - signal_handle_shadowed
                - sigfillset
                - sigprocmask
                - read
                - i_fatal
                - __errno_location
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
                - i_fatal
                - i_memcpy.7876
                - i_fatal
                - i_fatal
            - BranchSide:      'lib-signals.c:342,6'
              BranchSideFuncs:
                - sigfillset
                - sigprocmask
                - read
                - i_fatal
                - __errno_location
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
                - i_fatal
                - i_memcpy.7876
                - i_fatal
                - i_fatal
        - Branch String:   'lib-signals.c:342,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:343,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:344,6'
              BranchSideFuncs:
                - sigprocmask
                - read
                - i_fatal
                - __errno_location
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
                - i_fatal
                - i_memcpy.7876
                - i_fatal
        - Branch String:   'lib-signals.c:344,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:345,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:349,13'
              BranchSideFuncs:
                - read
                - i_fatal
                - __errno_location
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
                - i_fatal
                - i_memcpy.7876
        - Branch String:   'lib-signals.c:350,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:351,3'
              BranchSideFuncs:
                - i_memcpy.7876
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
            - BranchSide:      'lib-signals.c:354,13'
              BranchSideFuncs:
                - i_fatal
                - __errno_location
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
                - i_fatal
        - Branch String:   'lib-signals.c:354,13'
          Branch Sides:
            - BranchSide:      'lib-signals.c:355,7'
              BranchSideFuncs:
                - __errno_location
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
                - i_fatal
            - BranchSide:      'lib-signals.c:358,3'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'lib-signals.c:355,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:356,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:357,2'
              BranchSideFuncs:
                - sigprocmask
                - signal_shadow
                - i_panic
                - i_fatal
        - Branch String:   'lib-signals.c:360,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:361,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:363,6'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:363,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:364,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:367,13'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:367,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:367,2'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
            - BranchSide:      'lib-signals.c:368,8'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:370,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:371,4'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
            - BranchSide:      'lib-signals.c:373,28'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:373,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:374,4'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
            - BranchSide:      'lib-signals.c:392,7'
              BranchSideFuncs:
                - i_panic
                - signal_shadow
        - Branch String:   'lib-signals.c:374,4'
          Branch Sides:
            - BranchSide:      'lib-signals.c:374,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:375,8'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:375,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:378,5'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
            - BranchSide:      'lib-signals.c:380,9'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:380,54'
          Branch Sides:
            - BranchSide:      'lib-signals.c:381,8'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
            - BranchSide:      'lib-signals.c:389,4'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:380,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:384,5'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
            - BranchSide:      'lib-signals.c:389,4'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
        - Branch String:   'lib-signals.c:392,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:395,18'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
            - BranchSide:      'lib-signals.c:397,2'
              BranchSideFuncs:
                - signal_shadow
                - i_panic
      Callsites:
        - Src:             'lib-signals.c:339,3'
          Dst:             signal_handle_shadowed
        - Src:             'lib-signals.c:342,6'
          Dst:             sigfillset
        - Src:             'lib-signals.c:343,3'
          Dst:             i_fatal
        - Src:             'lib-signals.c:344,6'
          Dst:             sigprocmask
        - Src:             'lib-signals.c:345,3'
          Dst:             i_fatal
        - Src:             'lib-signals.c:349,8'
          Dst:             read
        - Src:             'lib-signals.c:351,3'
          Dst:             i_memcpy
        - Src:             'lib-signals.c:355,7'
          Dst:             __errno_location
        - Src:             'lib-signals.c:356,4'
          Dst:             i_fatal
        - Src:             'lib-signals.c:358,3'
          Dst:             i_fatal
        - Src:             'lib-signals.c:360,6'
          Dst:             sigprocmask
        - Src:             'lib-signals.c:361,3'
          Dst:             i_fatal
        - Src:             'lib-signals.c:374,4'
          Dst:             i_panic
        - Src:             'lib-signals.c:395,4'
          Dst:             signal_shadow
    - functionName:    sigfillset
      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:    sigprocmask
      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:    lib_signals_init_io
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - l
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_add_to
        - io_set_never_wait_alone
        - signal_read
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:200,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:202,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:205,10'
              BranchSideFuncs:
                - io_add_to
                - io_set_never_wait_alone
      Callsites:
        - Src:             'lib-signals.c:205,10'
          Dst:             io_add_to
        - Src:             'lib-signals.c:205,10'
          Dst:             signal_read
        - Src:             'lib-signals.c:206,2'
          Dst:             io_set_never_wait_alone
    - functionName:    lib_signals_ioloop_find
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         8
      ICount:          39
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-signals.c:191,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:191,2'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:192,7'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:192,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:193,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:194,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    lib_signals_ioloop_ref
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         11
      ICount:          73
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - lib_signals_init_io
        - lib_signals_ioloop_find
        - malloc_multiply_check
        - p_malloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:215,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:215,6'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - lib_signals_init_io
            - BranchSide:      'lib-signals.c:216,7'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - lib_signals_init_io
        - Branch String:   'lib-signals.c:219,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:219,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:220,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-signals.c:214,6'
          Dst:             lib_signals_ioloop_find
        - Src:             'lib-signals.c:216,7'
          Dst:             malloc_multiply_check
        - Src:             'lib-signals.c:216,7'
          Dst:             p_malloc
        - Src:             'lib-signals.c:218,3'
          Dst:             lib_signals_init_io
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    lib_signals_deinit
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 709
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         30
      ICount:          129
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - array_free_i
        - array_is_created_i
        - close
        - i_error
        - i_panic
        - lib_signals_clear_handlers_and_ignore
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:712,9'
          Branch Sides:
            - BranchSide:      'lib-signals.c:710,6'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - close
                - close
                - i_error
                - i_error
                - i_panic
                - lib_signals_clear_handlers_and_ignore
            - BranchSide:      'lib-signals.c:712,14'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - close
                - close
                - i_error
                - i_error
                - i_panic
                - lib_signals_clear_handlers_and_ignore
        - Branch String:   'lib-signals.c:712,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:713,23'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - close
                - close
                - i_error
                - i_error
                - i_panic
                - lib_signals_clear_handlers_and_ignore
            - BranchSide:      'lib-signals.c:716,2'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - close
                - close
                - i_error
                - i_error
                - i_panic
        - Branch String:   'lib-signals.c:713,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:714,42'
              BranchSideFuncs:
                - lib_signals_clear_handlers_and_ignore
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - close
                - close
                - i_error
                - i_error
                - i_panic
            - BranchSide:      'lib-signals.c:715,2'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - close
                - close
                - i_error
                - i_error
                - i_panic
                - lib_signals_clear_handlers_and_ignore
        - Branch String:   'lib-signals.c:716,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:716,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:718,6'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - close
                - close
                - i_error
                - i_error
        - Branch String:   'lib-signals.c:718,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:719,13'
              BranchSideFuncs:
                - close
                - close
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - i_error
                - i_error
            - BranchSide:      'lib-signals.c:726,6'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
        - Branch String:   'lib-signals.c:719,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:720,4'
              BranchSideFuncs:
                - i_error
                - close
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - i_error
            - BranchSide:      'lib-signals.c:721,13'
              BranchSideFuncs:
                - close
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
                - i_error
        - Branch String:   'lib-signals.c:721,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:722,4'
              BranchSideFuncs:
                - i_error
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
            - BranchSide:      'lib-signals.c:723,35'
              BranchSideFuncs:
                - array_is_created_i.7886
                - i_panic
                - array_free_i.7900
        - Branch String:   'lib-signals.c:726,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:727,3'
              BranchSideFuncs:
                - array_free_i.7900
                - i_panic
            - BranchSide:      'lib-signals.c:728,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-signals.c:728,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:728,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:728,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-signals.c:714,4'
          Dst:             lib_signals_clear_handlers_and_ignore
        - Src:             'lib-signals.c:716,2'
          Dst:             i_panic
        - Src:             'lib-signals.c:719,7'
          Dst:             close
        - Src:             'lib-signals.c:720,4'
          Dst:             i_error
        - Src:             'lib-signals.c:721,7'
          Dst:             close
        - Src:             'lib-signals.c:722,4'
          Dst:             i_error
        - Src:             'lib-signals.c:726,6'
          Dst:             array_is_created_i
        - Src:             'lib-signals.c:727,3'
          Dst:             array_free_i
        - Src:             'lib-signals.c:728,2'
          Dst:             i_panic
    - functionName:    lib_signals_clear_handlers_and_ignore
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - signo
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - lib_signals_ignore_forced
        - signal_handler_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:587,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:588,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:590,28'
              BranchSideFuncs:
                - lib_signals_ignore_forced
                - signal_handler_free
        - Branch String:   'lib-signals.c:595,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:595,2'
              BranchSideFuncs:
                - signal_handler_free
            - BranchSide:      'lib-signals.c:596,35'
              BranchSideFuncs:
                - signal_handler_free
        - Branch String:   'lib-signals.c:598,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:599,20'
              BranchSideFuncs:
                - signal_handler_free
            - BranchSide:      'lib-signals.c:600,23'
              BranchSideFuncs:
                - signal_handler_free
      Callsites:
        - Src:             'lib-signals.c:590,2'
          Dst:             lib_signals_ignore_forced
        - Src:             'lib-signals.c:600,3'
          Dst:             signal_handler_free
    - functionName:    lib_signals_ignore_forced
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - signo
        - restart_syscalls
      BBCount:         10
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_fatal
        - sigaction
        - sigemptyset
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib-signals.c:552,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:553,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:554,6'
              BranchSideFuncs:
                - sigaction
                - i_fatal
        - Branch String:   'lib-signals.c:554,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:555,7'
              BranchSideFuncs:
                - sigaction
                - i_fatal
            - BranchSide:      'lib-signals.c:559,7'
              BranchSideFuncs:
                - sigaction
                - i_fatal
        - Branch String:   'lib-signals.c:567,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:568,32'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:569,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-signals.c:552,6'
          Dst:             sigemptyset
        - Src:             'lib-signals.c:553,3'
          Dst:             i_fatal
        - Src:             'lib-signals.c:567,6'
          Dst:             sigaction
        - Src:             'lib-signals.c:568,3'
          Dst:             i_fatal
    - functionName:    signal_handler_free
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - h
      BBCount:         5
      ICount:          26
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - lib_signals_ioloop_unref
        - p_free_internal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-signals.c:252,2'
          Dst:             lib_signals_ioloop_unref
        - Src:             'lib-signals.c:253,2'
          Dst:             p_free_internal
    - functionName:    lib_signals_ioloop_unref
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _sig_ioloop
      BBCount:         24
      ICount:          134
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - io_remove
        - p_free_internal
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib-signals.c:231,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:232,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:233,2'
              BranchSideFuncs:
                - io_remove
                - p_free_internal.7899
                - i_panic
        - Branch String:   'lib-signals.c:233,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:233,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:234,8'
              BranchSideFuncs:
                - io_remove
                - p_free_internal.7899
        - Branch String:   'lib-signals.c:234,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:235,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:236,13'
              BranchSideFuncs:
                - io_remove
                - p_free_internal.7899
        - Branch String:   'lib-signals.c:237,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:237,2'
              BranchSideFuncs:
                - p_free_internal.7899
            - BranchSide:      'lib-signals.c:237,2'
              BranchSideFuncs:
                - p_free_internal.7899
        - Branch String:   'lib-signals.c:237,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:237,2'
              BranchSideFuncs:
                - p_free_internal.7899
            - BranchSide:      'lib-signals.c:238,2'
              BranchSideFuncs:
                - p_free_internal.7899
      Callsites:
        - Src:             'lib-signals.c:233,2'
          Dst:             i_panic
        - Src:             'lib-signals.c:236,2'
          Dst:             io_remove
        - Src:             'lib-signals.c:238,2'
          Dst:             p_free_internal
    - functionName:    sigemptyset
      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:    sigaction
      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:    lib_signals_ioloop_destroyed
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ioloop
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_remove
        - lib_signals_ioloop_find
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:455,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:455,6'
              BranchSideFuncs:
                - io_remove
            - BranchSide:      'lib-signals.c:456,14'
              BranchSideFuncs:
                - io_remove
      Callsites:
        - Src:             'lib-signals.c:454,15'
          Dst:             lib_signals_ioloop_find
        - Src:             'lib-signals.c:456,3'
          Dst:             io_remove
    - functionName:    lib_signals_ioloop_switched
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - prev_ioloop
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lib_signals_ioloop_switch
        - signal_check_shadowed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib-signals.c:444,2'
          Dst:             lib_signals_ioloop_switch
        - Src:             'lib-signals.c:447,2'
          Dst:             signal_check_shadowed
    - functionName:    lib_signals_ioloop_switch
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         23
      ICount:          104
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - lib_signals_ioloop_ref
        - lib_signals_ioloop_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:424,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:422,25'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:424,6'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
        - Branch String:   'lib-signals.c:424,29'
          Branch Sides:
            - BranchSide:      'lib-signals.c:424,32'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:425,3'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:424,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:425,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:429,11'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
        - Branch String:   'lib-signals.c:429,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:430,28'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:437,23'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:430,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:431,9'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:436,2'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
        - Branch String:   'lib-signals.c:431,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:432,31'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
                - lib_signals_ioloop_ref
            - BranchSide:      'lib-signals.c:433,8'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
                - lib_signals_ioloop_ref
        - Branch String:   'lib-signals.c:433,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:434,44'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:435,3'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
                - lib_signals_ioloop_unref
      Callsites:
        - Src:             'lib-signals.c:432,5'
          Dst:             lib_signals_ioloop_unref
        - Src:             'lib-signals.c:434,21'
          Dst:             lib_signals_ioloop_ref
    - functionName:    signal_check_shadowed
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          46
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - array_count_i
        - array_is_created_i
        - io_set_pending
        - lib_signals_ioloop_find
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:299,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:297,24'
              BranchSideFuncs:
                - array_is_created_i.7886
                - array_count_i.7885
                - lib_signals_ioloop_find
                - io_set_pending
            - BranchSide:      'lib-signals.c:299,7'
              BranchSideFuncs:
                - array_is_created_i.7886
                - array_count_i.7885
                - lib_signals_ioloop_find
                - io_set_pending
        - Branch String:   'lib-signals.c:299,51'
          Branch Sides:
            - BranchSide:      'lib-signals.c:300,6'
              BranchSideFuncs:
                - array_count_i.7885
                - lib_signals_ioloop_find
                - io_set_pending
            - BranchSide:      'lib-signals.c:301,3'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:299,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:301,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:303,39'
              BranchSideFuncs:
                - lib_signals_ioloop_find
                - io_set_pending
        - Branch String:   'lib-signals.c:304,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:304,6'
              BranchSideFuncs:
                - io_set_pending
            - BranchSide:      'lib-signals.c:305,18'
              BranchSideFuncs:
                - io_set_pending
      Callsites:
        - Src:             'lib-signals.c:299,7'
          Dst:             array_is_created_i
        - Src:             'lib-signals.c:300,6'
          Dst:             array_count_i
        - Src:             'lib-signals.c:303,15'
          Dst:             lib_signals_ioloop_find
        - Src:             'lib-signals.c:305,3'
          Dst:             io_set_pending
    - functionName:    lib_signals_init
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 706
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - io_loop_add_destroy_callback
        - io_loop_add_switch_callback
        - lib_signals_ioloop_destroyed
        - lib_signals_ioloop_switched
        - lib_signals_set
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:697,22'
          Branch Sides:
            - BranchSide:      'lib-signals.c:695,6'
              BranchSideFuncs:
                - io_loop_add_switch_callback
                - io_loop_add_destroy_callback
                - lib_signals_set
            - BranchSide:      'lib-signals.c:702,14'
              BranchSideFuncs:
                - io_loop_add_switch_callback
                - io_loop_add_destroy_callback
                - lib_signals_set
        - Branch String:   'lib-signals.c:702,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:703,23'
              BranchSideFuncs:
                - lib_signals_set
            - BranchSide:      'lib-signals.c:706,1'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:703,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:704,20'
              BranchSideFuncs:
                - lib_signals_set
            - BranchSide:      'lib-signals.c:705,2'
              BranchSideFuncs:
                - lib_signals_set
      Callsites:
        - Src:             'lib-signals.c:698,2'
          Dst:             io_loop_add_switch_callback
        - Src:             'lib-signals.c:698,2'
          Dst:             lib_signals_ioloop_switched
        - Src:             'lib-signals.c:699,2'
          Dst:             io_loop_add_destroy_callback
        - Src:             'lib-signals.c:699,2'
          Dst:             lib_signals_ioloop_destroyed
        - Src:             'lib-signals.c:704,4'
          Dst:             lib_signals_set
    - functionName:    lib_signals_set
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - signo
        - flags
      BBCount:         10
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_fatal
        - sigaction
        - sigemptyset
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:485,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:486,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:488,6'
              BranchSideFuncs:
                - sigaction
                - i_fatal
        - Branch String:   'lib-signals.c:494,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:495,7'
              BranchSideFuncs:
                - sigaction
                - i_fatal
            - BranchSide:      'lib-signals.c:496,16'
              BranchSideFuncs:
                - sigaction
                - i_fatal
        - Branch String:   'lib-signals.c:496,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:497,32'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:498,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-signals.c:485,6'
          Dst:             sigemptyset
        - Src:             'lib-signals.c:486,3'
          Dst:             i_fatal
        - Src:             'lib-signals.c:496,6'
          Dst:             sigaction
        - Src:             'lib-signals.c:497,3'
          Dst:             i_fatal
    - functionName:    lib_signals_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 669
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - handler
        - context
      BBCount:         16
      ICount:          94
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - signal_check_shadowed
        - signal_handler_switch_ioloop
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:657,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:658,7'
              BranchSideFuncs:
                - i_panic
                - signal_handler_switch_ioloop
                - signal_check_shadowed
                - i_panic
            - BranchSide:      'lib-signals.c:669,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-signals.c:658,37'
          Branch Sides:
            - BranchSide:      'lib-signals.c:658,40'
              BranchSideFuncs:
                - i_panic
                - signal_handler_switch_ioloop
                - signal_check_shadowed
                - i_panic
            - BranchSide:      'lib-signals.c:666,2'
              BranchSideFuncs:
                - i_panic
                - signal_handler_switch_ioloop
                - signal_check_shadowed
                - i_panic
        - Branch String:   'lib-signals.c:658,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:659,4'
              BranchSideFuncs:
                - signal_handler_switch_ioloop
                - signal_check_shadowed
                - i_panic
            - BranchSide:      'lib-signals.c:666,2'
              BranchSideFuncs:
                - i_panic
                - signal_handler_switch_ioloop
                - signal_check_shadowed
                - i_panic
        - Branch String:   'lib-signals.c:659,4'
          Branch Sides:
            - BranchSide:      'lib-signals.c:659,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:659,4'
              BranchSideFuncs:
                - signal_handler_switch_ioloop
                - signal_check_shadowed
      Callsites:
        - Src:             'lib-signals.c:659,4'
          Dst:             i_panic
        - Src:             'lib-signals.c:660,4'
          Dst:             signal_handler_switch_ioloop
        - Src:             'lib-signals.c:663,4'
          Dst:             signal_check_shadowed
        - Src:             'lib-signals.c:668,2'
          Dst:             i_panic
    - functionName:    signal_handler_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - h
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lib_signals_ioloop_ref
        - lib_signals_ioloop_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:244,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:245,42'
              BranchSideFuncs:
                - lib_signals_ioloop_ref
            - BranchSide:      'lib-signals.c:247,24'
              BranchSideFuncs: []
      Callsites:
        - Src:             'lib-signals.c:243,2'
          Dst:             lib_signals_ioloop_unref
        - Src:             'lib-signals.c:245,19'
          Dst:             lib_signals_ioloop_ref
    - functionName:    lib_signals_set_expected
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - expected
        - handler
        - context
      BBCount:         18
      ICount:          119
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - lib_signals_update_expected_signals
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:637,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:638,8'
              BranchSideFuncs:
                - i_panic
                - lib_signals_update_expected_signals
            - BranchSide:      'lib-signals.c:649,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-signals.c:638,40'
          Branch Sides:
            - BranchSide:      'lib-signals.c:639,42'
              BranchSideFuncs:
                - i_panic
                - lib_signals_update_expected_signals
            - BranchSide:      'lib-signals.c:639,8'
              BranchSideFuncs:
                - i_panic
                - lib_signals_update_expected_signals
        - Branch String:   'lib-signals.c:639,39'
          Branch Sides:
            - BranchSide:      'lib-signals.c:639,42'
              BranchSideFuncs:
                - i_panic
                - lib_signals_update_expected_signals
            - BranchSide:      'lib-signals.c:646,2'
              BranchSideFuncs:
                - i_panic
                - lib_signals_update_expected_signals
        - Branch String:   'lib-signals.c:638,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:640,8'
              BranchSideFuncs:
                - lib_signals_update_expected_signals
            - BranchSide:      'lib-signals.c:646,2'
              BranchSideFuncs:
                - i_panic
                - lib_signals_update_expected_signals
        - Branch String:   'lib-signals.c:640,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:641,5'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:642,18'
              BranchSideFuncs:
                - lib_signals_update_expected_signals
      Callsites:
        - Src:             'lib-signals.c:643,4'
          Dst:             lib_signals_update_expected_signals
        - Src:             'lib-signals.c:648,2'
          Dst:             i_panic
    - functionName:    lib_signals_update_expected_signals
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - expected
      BBCount:         17
      ICount:          89
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - io_set_never_wait_alone
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:404,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:405,19'
              BranchSideFuncs:
                - io_set_never_wait_alone
            - BranchSide:      'lib-signals.c:407,3'
              BranchSideFuncs:
                - io_set_never_wait_alone
                - i_panic
        - Branch String:   'lib-signals.c:407,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:407,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:408,19'
              BranchSideFuncs:
                - io_set_never_wait_alone
        - Branch String:   'lib-signals.c:412,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:413,7'
              BranchSideFuncs:
                - io_set_never_wait_alone
            - BranchSide:      'lib-signals.c:418,1'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:413,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:414,28'
              BranchSideFuncs:
                - io_set_never_wait_alone
            - BranchSide:      'lib-signals.c:417,2'
              BranchSideFuncs:
                - io_set_never_wait_alone
      Callsites:
        - Src:             'lib-signals.c:407,3'
          Dst:             i_panic
        - Src:             'lib-signals.c:414,4'
          Dst:             io_set_never_wait_alone
    - functionName:    lib_signals_unset_handler
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 607
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - handler
        - context
      BBCount:         23
      ICount:          138
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - lib_signals_ignore_forced
        - lib_signals_update_expected_signals
        - signal_handler_free
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:610,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:611,10'
              BranchSideFuncs:
                - i_panic
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
            - BranchSide:      'lib-signals.c:629,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-signals.c:611,43'
          Branch Sides:
            - BranchSide:      'lib-signals.c:612,10'
              BranchSideFuncs:
                - i_panic
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
            - BranchSide:      'lib-signals.c:613,9'
              BranchSideFuncs:
                - i_panic
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
        - Branch String:   'lib-signals.c:612,42'
          Branch Sides:
            - BranchSide:      'lib-signals.c:613,9'
              BranchSideFuncs:
                - i_panic
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
            - BranchSide:      'lib-signals.c:626,2'
              BranchSideFuncs:
                - i_panic
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
        - Branch String:   'lib-signals.c:611,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:614,8'
              BranchSideFuncs:
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
            - BranchSide:      'lib-signals.c:626,2'
              BranchSideFuncs:
                - i_panic
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
        - Branch String:   'lib-signals.c:614,37'
          Branch Sides:
            - BranchSide:      'lib-signals.c:615,10'
              BranchSideFuncs:
                - signal_handler_free
                - lib_signals_update_expected_signals
                - lib_signals_ignore_forced
            - BranchSide:      'lib-signals.c:619,9'
              BranchSideFuncs:
                - signal_handler_free
                - lib_signals_update_expected_signals
        - Branch String:   'lib-signals.c:614,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:617,31'
              BranchSideFuncs:
                - lib_signals_ignore_forced
                - signal_handler_free
                - lib_signals_update_expected_signals
            - BranchSide:      'lib-signals.c:619,9'
              BranchSideFuncs:
                - signal_handler_free
                - lib_signals_update_expected_signals
        - Branch String:   'lib-signals.c:621,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:621,8'
              BranchSideFuncs:
                - lib_signals_update_expected_signals
                - signal_handler_free
            - BranchSide:      'lib-signals.c:622,5'
              BranchSideFuncs:
                - lib_signals_update_expected_signals
                - signal_handler_free
      Callsites:
        - Src:             'lib-signals.c:617,5'
          Dst:             lib_signals_ignore_forced
        - Src:             'lib-signals.c:622,5'
          Dst:             lib_signals_update_expected_signals
        - Src:             'lib-signals.c:623,4'
          Dst:             signal_handler_free
        - Src:             'lib-signals.c:628,2'
          Dst:             i_panic
    - functionName:    lib_signals_ignore
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 572
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - signo
        - restart_syscalls
      BBCount:         12
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - lib_signals_ignore_forced
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib-signals.c:573,16'
          Branch Sides:
            - BranchSide:      'lib-signals.c:573,19'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:575,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-signals.c:573,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:575,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:578,2'
              BranchSideFuncs:
                - lib_signals_ignore_forced
                - i_panic
        - Branch String:   'lib-signals.c:578,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:578,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:578,2'
              BranchSideFuncs:
                - lib_signals_ignore_forced
      Callsites:
        - Src:             'lib-signals.c:574,3'
          Dst:             i_panic
        - Src:             'lib-signals.c:578,2'
          Dst:             i_panic
        - Src:             'lib-signals.c:580,2'
          Dst:             lib_signals_ignore_forced
    - functionName:    lib_signals_set_handler2
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - flags
        - immediate_handler
        - delayed_handler
        - context
      BBCount:         27
      ICount:          172
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - fd_close_on_exec
        - fd_set_nonblock
        - i_fatal
        - i_panic
        - lib_signals_set
        - malloc_multiply_check
        - p_malloc
        - pipe
        - signal_handler_switch_ioloop
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib-signals.c:516,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:516,2'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
                - lib_signals_set
                - i_panic
                - i_panic
            - BranchSide:      'lib-signals.c:516,2'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
                - lib_signals_set
                - i_panic
                - i_panic
        - Branch String:   'lib-signals.c:516,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:516,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:518,6'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
                - lib_signals_set
                - i_panic
        - Branch String:   'lib-signals.c:518,16'
          Branch Sides:
            - BranchSide:      'lib-signals.c:518,19'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:520,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'lib-signals.c:518,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:520,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'lib-signals.c:523,22'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
                - lib_signals_set
        - Branch String:   'lib-signals.c:523,37'
          Branch Sides:
            - BranchSide:      'lib-signals.c:523,40'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
                - lib_signals_set
            - BranchSide:      'lib-signals.c:526,6'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
        - Branch String:   'lib-signals.c:523,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:524,19'
              BranchSideFuncs:
                - lib_signals_set
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
            - BranchSide:      'lib-signals.c:526,6'
              BranchSideFuncs:
                - malloc_multiply_check.7895
                - p_malloc.7896
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
        - Branch String:   'lib-signals.c:536,33'
          Branch Sides:
            - BranchSide:      'lib-signals.c:536,36'
              BranchSideFuncs:
                - signal_handler_switch_ioloop
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - i_fatal
            - BranchSide:      'lib-signals.c:536,33'
              BranchSideFuncs:
                - signal_handler_switch_ioloop
        - Branch String:   'lib-signals.c:536,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:536,6'
              BranchSideFuncs:
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - signal_handler_switch_ioloop
                - i_fatal
            - BranchSide:      'lib-signals.c:538,7'
              BranchSideFuncs:
                - pipe
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - signal_handler_switch_ioloop
                - i_fatal
        - Branch String:   'lib-signals.c:538,7'
          Branch Sides:
            - BranchSide:      'lib-signals.c:539,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'lib-signals.c:540,19'
              BranchSideFuncs:
                - fd_set_nonblock
                - fd_set_nonblock
                - fd_close_on_exec
                - fd_close_on_exec
                - signal_handler_switch_ioloop
      Callsites:
        - Src:             'lib-signals.c:516,2'
          Dst:             i_panic
        - Src:             'lib-signals.c:519,3'
          Dst:             i_panic
        - Src:             'lib-signals.c:524,3'
          Dst:             lib_signals_set
        - Src:             'lib-signals.c:526,6'
          Dst:             malloc_multiply_check
        - Src:             'lib-signals.c:526,6'
          Dst:             p_malloc
        - Src:             'lib-signals.c:538,7'
          Dst:             pipe
        - Src:             'lib-signals.c:539,4'
          Dst:             i_fatal
        - Src:             'lib-signals.c:540,3'
          Dst:             fd_set_nonblock
        - Src:             'lib-signals.c:541,3'
          Dst:             fd_set_nonblock
        - Src:             'lib-signals.c:542,3'
          Dst:             fd_close_on_exec
        - Src:             'lib-signals.c:543,3'
          Dst:             fd_close_on_exec
        - Src:             'lib-signals.c:545,2'
          Dst:             signal_handler_switch_ioloop
    - functionName:    pipe
      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:    lib_signals_set_handler
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - signo
        - flags
        - handler
        - context
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lib_signals_set_handler2
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:503,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:504,28'
              BranchSideFuncs:
                - lib_signals_set_handler2
            - BranchSide:      'lib-signals.c:506,28'
              BranchSideFuncs:
                - lib_signals_set_handler2
      Callsites:
        - Src:             'lib-signals.c:504,3'
          Dst:             lib_signals_set_handler2
        - Src:             'lib-signals.c:506,3'
          Dst:             lib_signals_set_handler2
    - functionName:    lib_signals_ioloop_attach
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lib_signals_ioloop_switch
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:477,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:477,6'
              BranchSideFuncs:
                - lib_signals_ioloop_switch
            - BranchSide:      'lib-signals.c:477,6'
              BranchSideFuncs:
                - lib_signals_ioloop_switch
        - Branch String:   'lib-signals.c:477,6'
          Branch Sides:
            - BranchSide:      'lib-signals.c:477,6'
              BranchSideFuncs:
                - lib_signals_ioloop_switch
            - BranchSide:      'lib-signals.c:478,3'
              BranchSideFuncs:
                - lib_signals_ioloop_switch
      Callsites:
        - Src:             'lib-signals.c:478,3'
          Dst:             lib_signals_ioloop_switch
    - functionName:    lib_signals_ioloop_detach
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          67
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - lib_signals_ioloop_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:465,11'
          Branch Sides:
            - BranchSide:      'lib-signals.c:463,25'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:465,22'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
        - Branch String:   'lib-signals.c:465,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:466,28'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:473,1'
              BranchSideFuncs: []
        - Branch String:   'lib-signals.c:466,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:467,8'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:472,2'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
        - Branch String:   'lib-signals.c:467,8'
          Branch Sides:
            - BranchSide:      'lib-signals.c:468,31'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
            - BranchSide:      'lib-signals.c:471,3'
              BranchSideFuncs:
                - lib_signals_ioloop_unref
      Callsites:
        - Src:             'lib-signals.c:468,5'
          Dst:             lib_signals_ioloop_unref
    - functionName:    lib_signal_code_to_str
      functionSourceFile: '/src/dovecot/src/lib/lib-signals.c'
      linkageType:     externalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - signo
        - sicode
      BBCount:         19
      ICount:          91
      EdgeCount:       34
      CyclomaticComplexity: 17
      functionsReached:
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib-signals.c:69,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:75,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:78,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:81,3'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:87,10'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'lib-signals.c:87,2'
          Branch Sides:
            - BranchSide:      'lib-signals.c:89,11'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-signals.c:97,11'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'lib-signals.c:111,39'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'lib-signals.c:89,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:91,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:93,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:95,3'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'lib-signals.c:97,3'
          Branch Sides:
            - BranchSide:      'lib-signals.c:99,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:102,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:106,4'
              BranchSideFuncs: []
            - BranchSide:      'lib-signals.c:109,2'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'lib-signals.c:111,9'
          Dst:             t_strdup_printf
    - functionName:    hash_method_result_md4
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md4_final
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md4.c:273,2'
          Dst:             md4_final
    - functionName:    md4_final
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     externalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - result
      BBCount:         6
      ICount:          274
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - body
        - safe_memset
      functionUses:    2
      BranchProfiles:
        - Branch String:   'md4.c:211,6'
          Branch Sides:
            - BranchSide:      'md4.c:211,6'
              BranchSideFuncs:
                - body
                - body
                - safe_memset
            - BranchSide:      'md4.c:212,11'
              BranchSideFuncs:
                - body
                - body
                - safe_memset
      Callsites:
        - Src:             'md4.c:213,3'
          Dst:             body
        - Src:             'md4.c:230,2'
          Dst:             body
        - Src:             'md4.c:249,2'
          Dst:             safe_memset
    - functionName:    body
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - size
      BBCount:         5
      ICount:          1683
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'md4.c:139,2'
          Branch Sides:
            - BranchSide:      'md4.c:67,13'
              BranchSideFuncs: []
            - BranchSide:      'md4.c:141,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_loop_md4
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md4_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md4.c:268,2'
          Dst:             md4_update
    - functionName:    md4_update
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     externalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - size
      BBCount:         17
      ICount:          151
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - body
        - i_memcpy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'md4.c:166,6'
          Branch Sides:
            - BranchSide:      'md4.c:167,3'
              BranchSideFuncs: []
            - BranchSide:      'md4.c:169,13'
              BranchSideFuncs:
                - i_memcpy.7955
                - body
                - i_memcpy.7955
                - body
                - i_memcpy.7955
        - Branch String:   'md4.c:170,6'
          Branch Sides:
            - BranchSide:      'md4.c:171,3'
              BranchSideFuncs:
                - i_memcpy.7955
                - body
                - i_memcpy.7955
                - body
                - i_memcpy.7955
            - BranchSide:      'md4.c:172,13'
              BranchSideFuncs:
                - i_memcpy.7955
                - body
                - i_memcpy.7955
                - body
                - i_memcpy.7955
        - Branch String:   'md4.c:176,6'
          Branch Sides:
            - BranchSide:      'md4.c:177,15'
              BranchSideFuncs:
                - i_memcpy.7955
                - body
                - i_memcpy.7955
                - body
                - i_memcpy.7955
            - BranchSide:      'md4.c:190,6'
              BranchSideFuncs:
                - i_memcpy.7955
                - body
        - Branch String:   'md4.c:179,7'
          Branch Sides:
            - BranchSide:      'md4.c:180,4'
              BranchSideFuncs:
                - i_memcpy.7955
            - BranchSide:      'md4.c:184,3'
              BranchSideFuncs:
                - i_memcpy.7955
                - body
                - i_memcpy.7955
                - body
        - Branch String:   'md4.c:190,6'
          Branch Sides:
            - BranchSide:      'md4.c:191,15'
              BranchSideFuncs:
                - body
                - i_memcpy.7955
            - BranchSide:      'md4.c:195,2'
              BranchSideFuncs:
                - i_memcpy.7955
      Callsites:
        - Src:             'md4.c:180,4'
          Dst:             i_memcpy
        - Src:             'md4.c:184,3'
          Dst:             i_memcpy
        - Src:             'md4.c:187,3'
          Dst:             body
        - Src:             'md4.c:191,10'
          Dst:             body
        - Src:             'md4.c:195,2'
          Dst:             i_memcpy
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    hash_method_init_md4
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md4_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md4.c:264,2'
          Dst:             md4_init
    - functionName:    md4_init
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     externalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    md4_get_digest
      functionSourceFile: '/src/dovecot/src/lib/md4.c'
      linkageType:     externalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - result
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md4_final
        - md4_init
        - md4_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md4.c:257,2'
          Dst:             md4_init
        - Src:             'md4.c:258,2'
          Dst:             md4_update
        - Src:             'md4.c:259,2'
          Dst:             md4_final
    - functionName:    hash_method_result_md5
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md5_final
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md5.c:290,2'
          Dst:             md5_final
    - functionName:    md5_final
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     externalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - result
      BBCount:         6
      ICount:          274
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - body
        - safe_memset
      functionUses:    2
      BranchProfiles:
        - Branch String:   'md5.c:228,6'
          Branch Sides:
            - BranchSide:      'md5.c:228,6'
              BranchSideFuncs:
                - body.7985
                - body.7985
                - safe_memset
            - BranchSide:      'md5.c:229,11'
              BranchSideFuncs:
                - body.7985
                - body.7985
                - safe_memset
      Callsites:
        - Src:             'md5.c:230,3'
          Dst:             body
        - Src:             'md5.c:247,2'
          Dst:             body
        - Src:             'md5.c:266,2'
          Dst:             safe_memset
    - functionName:    body
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - size
      BBCount:         5
      ICount:          2139
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'md5.c:154,2'
          Branch Sides:
            - BranchSide:      'md5.c:71,13'
              BranchSideFuncs: []
            - BranchSide:      'md5.c:156,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_loop_md5
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md5_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md5.c:285,2'
          Dst:             md5_update
    - functionName:    md5_update
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     externalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - size
      BBCount:         17
      ICount:          151
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - body
        - i_memcpy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'md5.c:183,6'
          Branch Sides:
            - BranchSide:      'md5.c:184,3'
              BranchSideFuncs: []
            - BranchSide:      'md5.c:186,13'
              BranchSideFuncs:
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
        - Branch String:   'md5.c:187,6'
          Branch Sides:
            - BranchSide:      'md5.c:188,3'
              BranchSideFuncs:
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
            - BranchSide:      'md5.c:189,13'
              BranchSideFuncs:
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
        - Branch String:   'md5.c:193,6'
          Branch Sides:
            - BranchSide:      'md5.c:194,15'
              BranchSideFuncs:
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
            - BranchSide:      'md5.c:207,6'
              BranchSideFuncs:
                - i_memcpy.7986
                - body.7985
        - Branch String:   'md5.c:196,7'
          Branch Sides:
            - BranchSide:      'md5.c:197,4'
              BranchSideFuncs:
                - i_memcpy.7986
            - BranchSide:      'md5.c:201,3'
              BranchSideFuncs:
                - i_memcpy.7986
                - body.7985
                - i_memcpy.7986
                - body.7985
        - Branch String:   'md5.c:207,6'
          Branch Sides:
            - BranchSide:      'md5.c:208,15'
              BranchSideFuncs:
                - body.7985
                - i_memcpy.7986
            - BranchSide:      'md5.c:212,2'
              BranchSideFuncs:
                - i_memcpy.7986
      Callsites:
        - Src:             'md5.c:197,4'
          Dst:             i_memcpy
        - Src:             'md5.c:201,3'
          Dst:             i_memcpy
        - Src:             'md5.c:204,3'
          Dst:             body
        - Src:             'md5.c:208,10'
          Dst:             body
        - Src:             'md5.c:212,2'
          Dst:             i_memcpy
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    hash_method_init_md5
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md5_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md5.c:281,2'
          Dst:             md5_init
    - functionName:    md5_init
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     externalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    md5_get_digest
      functionSourceFile: '/src/dovecot/src/lib/md5.c'
      linkageType:     externalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - result
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - md5_final
        - md5_init
        - md5_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'md5.c:274,2'
          Dst:             md5_init
        - Src:             'md5.c:275,2'
          Dst:             md5_update
        - Src:             'md5.c:276,2'
          Dst:             md5_final
    - functionName:    memarea_free_callback_noop
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memarea_get_size
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - area
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memarea_get
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - area
        - size_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memarea_get_refcount
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - area
      BBCount:         7
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   'memarea.c:76,2'
          Branch Sides:
            - BranchSide:      'memarea.c:76,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:76,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'memarea.c:76,2'
          Dst:             i_panic
    - functionName:    memarea_free_without_callback
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _area
      BBCount:         9
      ICount:          48
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - memarea_get_refcount
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'memarea.c:70,2'
          Branch Sides:
            - BranchSide:      'memarea.c:70,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:71,2'
              BranchSideFuncs:
                - p_free_internal.8030
      Callsites:
        - Src:             'memarea.c:70,2'
          Dst:             memarea_get_refcount
        - Src:             'memarea.c:70,2'
          Dst:             i_panic
        - Src:             'memarea.c:71,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    memarea_unref
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _area
      BBCount:         15
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - p_free_internal
      functionUses:    4
      BranchProfiles:
        - Branch String:   'memarea.c:56,2'
          Branch Sides:
            - BranchSide:      'memarea.c:56,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:58,8'
              BranchSideFuncs:
                - p_free_internal.8030
                - i_panic
        - Branch String:   'memarea.c:58,6'
          Branch Sides:
            - BranchSide:      'memarea.c:59,3'
              BranchSideFuncs: []
            - BranchSide:      'memarea.c:60,2'
              BranchSideFuncs:
                - p_free_internal.8030
                - i_panic
        - Branch String:   'memarea.c:60,2'
          Branch Sides:
            - BranchSide:      'memarea.c:60,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:61,2'
              BranchSideFuncs:
                - p_free_internal.8030
      Callsites:
        - Src:             'memarea.c:56,2'
          Dst:             i_panic
        - Src:             'memarea.c:60,2'
          Dst:             i_panic
        - Src:             'memarea.c:62,2'
          Dst:             p_free_internal
    - functionName:    memarea_ref
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - area
      BBCount:         7
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'memarea.c:47,2'
          Branch Sides:
            - BranchSide:      'memarea.c:47,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:47,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'memarea.c:47,2'
          Dst:             i_panic
    - functionName:    memarea_init_empty
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'memarea.c:40,2'
          Branch Sides:
            - BranchSide:      'memarea.c:40,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:40,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'memarea.c:40,2'
          Branch Sides:
            - BranchSide:      'memarea.c:40,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:40,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'memarea.c:40,2'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    memarea_init
      functionSourceFile: '/src/dovecot/src/lib/memarea.c'
      linkageType:     externalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - callback
        - context
      BBCount:         7
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'memarea.c:27,2'
          Branch Sides:
            - BranchSide:      'memarea.c:27,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'memarea.c:27,2'
              BranchSideFuncs:
                - malloc_multiply_check.8039
                - p_malloc.8041
      Callsites:
        - Src:             'memarea.c:27,2'
          Dst:             i_panic
        - Src:             'memarea.c:29,9'
          Dst:             malloc_multiply_check
        - Src:             'memarea.c:29,9'
          Dst:             p_malloc
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:176,6'
          Branch Sides:
            - BranchSide:      './mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    pool_external_refs_unref
      functionSourceFile: '/src/dovecot/src/lib/mempool.c'
      linkageType:     externalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - array_free_i
        - array_is_created_i
        - i_memcpy
        - pool_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'mempool.c:43,6'
          Branch Sides:
            - BranchSide:      'mempool.c:43,6'
              BranchSideFuncs:
                - array_free_i.8075
                - pool_unref.8076
                - i_memcpy.8077
            - BranchSide:      'mempool.c:45,3'
              BranchSideFuncs:
                - array_free_i.8075
                - pool_unref.8076
                - i_memcpy.8077
        - Branch String:   'mempool.c:45,3'
          Branch Sides:
            - BranchSide:      'mempool.c:45,3'
              BranchSideFuncs:
                - i_memcpy.8077
                - array_free_i.8075
                - pool_unref.8076
            - BranchSide:      'mempool.c:45,3'
              BranchSideFuncs:
                - array_free_i.8075
                - pool_unref.8076
                - i_memcpy.8077
        - Branch String:   'mempool.c:45,3'
          Branch Sides:
            - BranchSide:      'mempool.c:46,4'
              BranchSideFuncs:
                - pool_unref.8076
                - array_free_i.8075
                - i_memcpy.8077
            - BranchSide:      'mempool.c:47,3'
              BranchSideFuncs:
                - array_free_i.8075
      Callsites:
        - Src:             'mempool.c:43,6'
          Dst:             array_is_created_i
        - Src:             'mempool.c:45,3'
          Dst:             i_memcpy
        - Src:             'mempool.c:46,4'
          Dst:             pool_unref
        - Src:             'mempool.c:47,3'
          Dst:             array_free_i
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_ref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.8074
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.8074
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    pool_add_external_ref
      functionSourceFile: '/src/dovecot/src/lib/mempool.c'
      linkageType:     externalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - ref_pool
      BBCount:         22
      ICount:          114
      EdgeCount:       23
      CyclomaticComplexity: 3
      functionsReached:
        - array_append_i
        - array_create_i
        - array_is_created_i
        - i_panic
        - pool_ref
      functionUses:    4
      BranchProfiles:
        - Branch String:   'mempool.c:30,2'
          Branch Sides:
            - BranchSide:      'mempool.c:30,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:31,2'
              BranchSideFuncs:
                - array_is_created_i.8084
                - array_create_i.8087
                - array_append_i.8086
                - pool_ref.8085
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'mempool.c:31,2'
          Branch Sides:
            - BranchSide:      'mempool.c:31,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:32,2'
              BranchSideFuncs:
                - array_is_created_i.8084
                - array_create_i.8087
                - array_append_i.8086
                - pool_ref.8085
                - i_panic
                - i_panic
        - Branch String:   'mempool.c:32,2'
          Branch Sides:
            - BranchSide:      'mempool.c:32,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:33,2'
              BranchSideFuncs:
                - array_is_created_i.8084
                - array_create_i.8087
                - array_append_i.8086
                - pool_ref.8085
                - i_panic
        - Branch String:   'mempool.c:33,2'
          Branch Sides:
            - BranchSide:      'mempool.c:33,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:35,7'
              BranchSideFuncs:
                - array_is_created_i.8084
                - array_create_i.8087
                - array_append_i.8086
                - pool_ref.8085
        - Branch String:   'mempool.c:35,6'
          Branch Sides:
            - BranchSide:      'mempool.c:35,6'
              BranchSideFuncs:
                - array_append_i.8086
                - pool_ref.8085
            - BranchSide:      'mempool.c:36,3'
              BranchSideFuncs:
                - array_create_i.8087
                - array_append_i.8086
                - pool_ref.8085
      Callsites:
        - Src:             'mempool.c:30,2'
          Dst:             i_panic
        - Src:             'mempool.c:31,2'
          Dst:             i_panic
        - Src:             'mempool.c:32,2'
          Dst:             i_panic
        - Src:             'mempool.c:33,2'
          Dst:             i_panic
        - Src:             'mempool.c:35,7'
          Dst:             array_is_created_i
        - Src:             'mempool.c:36,3'
          Dst:             array_create_i
        - Src:             'mempool.c:37,2'
          Dst:             array_append_i
        - Src:             'mempool.c:38,2'
          Dst:             pool_ref
    - functionName:    p_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_get_exp_grown_size
      functionSourceFile: '/src/dovecot/src/lib/mempool.c'
      linkageType:     externalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - old_size
        - min_size
      BBCount:         16
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - nearest_power
        - p_get_max_easy_alloc_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'mempool.c:17,2'
          Branch Sides:
            - BranchSide:      'mempool.c:17,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:19,27'
              BranchSideFuncs:
                - nearest_power
                - p_get_max_easy_alloc_size.8095
                - i_panic
        - Branch String:   'mempool.c:22,27'
          Branch Sides:
            - BranchSide:      'mempool.c:22,30'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:24,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'mempool.c:22,6'
          Branch Sides:
            - BranchSide:      'mempool.c:23,14'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:24,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'mempool.c:24,2'
          Branch Sides:
            - BranchSide:      'mempool.c:24,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool.c:24,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool.c:17,2'
          Dst:             i_panic
        - Src:             'mempool.c:19,13'
          Dst:             nearest_power
        - Src:             'mempool.c:20,25'
          Dst:             p_get_max_easy_alloc_size
        - Src:             'mempool.c:24,2'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    pool_alloconly_try_grow
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - apool
        - mem
        - size
      BBCount:         7
      ICount:          90
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:447,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:451,7'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:460,2'
              BranchSideFuncs: []
        - Branch String:   'mempool-alloconly.c:451,7'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:454,5'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:458,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_alloconly_free_block
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - apool
        - block
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - safe_memset
      functionUses:    2
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:287,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:287,6'
              BranchSideFuncs:
                - safe_memset
                - free
            - BranchSide:      'mempool-alloconly.c:288,15'
              BranchSideFuncs:
                - safe_memset
                - free
      Callsites:
        - Src:             'mempool-alloconly.c:288,3'
          Dst:             safe_memset
    - functionName:    pool_alloconly_free_blocks_until_last
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - apool
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pool_alloconly_free_block
      functionUses:    2
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:302,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:303,11'
              BranchSideFuncs:
                - pool_alloconly_free_block
            - BranchSide:      'mempool-alloconly.c:308,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:306,3'
          Dst:             pool_alloconly_free_block
    - functionName:    pool_alloconly_destroy
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - apool
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_alloconly_free_block
        - pool_alloconly_free_blocks_until_last
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool-alloconly.c:313,2'
          Dst:             pool_alloconly_free_blocks_until_last
        - Src:             'mempool-alloconly.c:316,2'
          Dst:             pool_alloconly_free_block
    - functionName:    pool_alloconly_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_alloconly_clear
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_alloconly_free_blocks_until_last
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool-alloconly.c:499,2'
          Dst:             pool_alloconly_free_blocks_until_last
    - functionName:    pool_alloconly_realloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         16
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - i_panic
        - pool_alloconly_malloc
        - pool_alloconly_try_grow
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:470,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:470,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:472,6'
              BranchSideFuncs:
                - pool_alloconly_try_grow
                - pool_alloconly_malloc
                - i_memcpy.8144
        - Branch String:   'mempool-alloconly.c:472,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:473,10'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:475,13'
              BranchSideFuncs:
                - pool_alloconly_try_grow
                - pool_alloconly_malloc
                - i_memcpy.8144
        - Branch String:   'mempool-alloconly.c:478,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:480,35'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:486,9'
              BranchSideFuncs: []
        - Branch String:   'mempool-alloconly.c:481,7'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:482,4'
              BranchSideFuncs:
                - i_memcpy.8144
            - BranchSide:      'mempool-alloconly.c:483,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:470,2'
          Dst:             i_panic
        - Src:             'mempool-alloconly.c:478,7'
          Dst:             pool_alloconly_try_grow
        - Src:             'mempool-alloconly.c:480,13'
          Dst:             pool_alloconly_malloc
        - Src:             'mempool-alloconly.c:482,4'
          Dst:             i_memcpy
    - functionName:    pool_alloconly_malloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - block_alloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:409,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:409,6'
              BranchSideFuncs:
                - block_alloc
            - BranchSide:      'mempool-alloconly.c:411,15'
              BranchSideFuncs:
                - block_alloc
      Callsites:
        - Src:             'mempool-alloconly.c:411,3'
          Dst:             block_alloc
    - functionName:    block_alloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - apool
        - size
      BBCount:         25
      ICount:          162
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - i_fatal_status
        - i_panic
        - nearest_power
      functionUses:    2
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:359,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:359,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:360,2'
              BranchSideFuncs:
                - calloc
                - i_fatal_status
                - nearest_power
                - i_panic
        - Branch String:   'mempool-alloconly.c:360,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:360,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:362,6'
              BranchSideFuncs:
                - calloc
                - i_fatal_status
                - nearest_power
        - Branch String:   'mempool-alloconly.c:362,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:364,7'
              BranchSideFuncs:
                - nearest_power
                - calloc
                - i_fatal_status
            - BranchSide:      'mempool-alloconly.c:384,17'
              BranchSideFuncs:
                - calloc
                - i_fatal_status
        - Branch String:   'mempool-alloconly.c:364,7'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:365,12'
              BranchSideFuncs:
                - nearest_power
                - calloc
                - i_fatal_status
            - BranchSide:      'mempool-alloconly.c:368,10'
              BranchSideFuncs:
                - nearest_power
                - calloc
                - i_fatal_status
        - Branch String:   'mempool-alloconly.c:368,10'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:368,8'
              BranchSideFuncs:
                - nearest_power
                - calloc
                - i_fatal_status
            - BranchSide:      'mempool-alloconly.c:368,8'
              BranchSideFuncs:
                - nearest_power
                - calloc
                - i_fatal_status
        - Branch String:   'mempool-alloconly.c:371,10'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:371,8'
              BranchSideFuncs:
                - calloc
                - i_fatal_status
            - BranchSide:      'mempool-alloconly.c:371,8'
              BranchSideFuncs:
                - calloc
                - i_fatal_status
        - Branch String:   'mempool-alloconly.c:385,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:387,31'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'mempool-alloconly.c:389,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:359,2'
          Dst:             i_panic
        - Src:             'mempool-alloconly.c:360,2'
          Dst:             i_panic
        - Src:             'mempool-alloconly.c:369,10'
          Dst:             nearest_power
        - Src:             'mempool-alloconly.c:384,10'
          Dst:             calloc
        - Src:             'mempool-alloconly.c:386,3'
          Dst:             i_fatal_status
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_alloconly_free
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         4
      ICount:          73
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:435,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:435,6'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:438,10'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    pool_alloconly_unref
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pool_alloconly_destroy
        - pool_external_refs_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:348,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:349,3'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:351,28'
              BranchSideFuncs:
                - pool_external_refs_unref
                - pool_alloconly_destroy
      Callsites:
        - Src:             'mempool-alloconly.c:351,2'
          Dst:             pool_external_refs_unref
        - Src:             'mempool-alloconly.c:352,2'
          Dst:             pool_alloconly_destroy
    - functionName:    pool_alloconly_ref
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_alloconly_get_name
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_alloconly_get_total_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     externalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         11
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:543,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:543,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:545,15'
              BranchSideFuncs: []
        - Branch String:   'mempool-alloconly.c:545,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:546,11'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:547,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:543,2'
          Dst:             i_panic
    - functionName:    pool_alloconly_get_total_used_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     externalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         11
      ICount:          74
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:529,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:529,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:531,15'
              BranchSideFuncs: []
        - Branch String:   'mempool-alloconly.c:531,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:532,11'
              BranchSideFuncs: []
            - BranchSide:      'mempool-alloconly.c:533,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:529,2'
          Dst:             i_panic
    - functionName:    pool_alloconly_create_clean
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     externalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - name
        - size
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_alloconly_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool-alloconly.c:275,9'
          Dst:             pool_alloconly_create
    - functionName:    pool_alloconly_create
      functionSourceFile: '/src/dovecot/src/lib/mempool-alloconly.c'
      linkageType:     externalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - name
        - size
      BBCount:         10
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - block_alloc
        - i_panic
        - malloc_multiply_check
        - nearest_power
        - p_malloc
      functionUses:    23
      BranchProfiles:
        - Branch String:   'mempool-alloconly.c:247,6'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:248,24'
              BranchSideFuncs:
                - nearest_power
                - block_alloc
                - malloc_multiply_check.8158
                - p_malloc.8159
                - i_panic
            - BranchSide:      'mempool-alloconly.c:249,22'
              BranchSideFuncs:
                - block_alloc
                - malloc_multiply_check.8158
                - p_malloc.8159
                - i_panic
        - Branch String:   'mempool-alloconly.c:265,2'
          Branch Sides:
            - BranchSide:      'mempool-alloconly.c:265,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-alloconly.c:265,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-alloconly.c:248,10'
          Dst:             nearest_power
        - Src:             'mempool-alloconly.c:249,2'
          Dst:             block_alloc
        - Src:             'mempool-alloconly.c:252,14'
          Dst:             malloc_multiply_check
        - Src:             'mempool-alloconly.c:252,14'
          Dst:             p_malloc
        - Src:             'mempool-alloconly.c:265,2'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    pool_data_stack_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_get_bytes_available
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool-datastack.c:192,9'
          Dst:             t_get_bytes_available
    - functionName:    pool_data_stack_clear
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_data_stack_realloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         18
      ICount:          118
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - i_panic
        - t_malloc_no0
        - t_try_realloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:165,2'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:165,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:168,6'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8189
                - i_panic
        - Branch String:   'mempool-datastack.c:168,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:169,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:171,6'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8189
        - Branch String:   'mempool-datastack.c:171,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:172,10'
              BranchSideFuncs: []
            - BranchSide:      'mempool-datastack.c:174,21'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8189
        - Branch String:   'mempool-datastack.c:174,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:175,26'
              BranchSideFuncs: []
            - BranchSide:      'mempool-datastack.c:181,18'
              BranchSideFuncs: []
        - Branch String:   'mempool-datastack.c:176,7'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:177,4'
              BranchSideFuncs:
                - i_memcpy.8189
            - BranchSide:      'mempool-datastack.c:178,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-datastack.c:165,2'
          Dst:             i_panic
        - Src:             'mempool-datastack.c:169,3'
          Dst:             i_panic
        - Src:             'mempool-datastack.c:174,7'
          Dst:             t_try_realloc
        - Src:             'mempool-datastack.c:175,13'
          Dst:             t_malloc_no0
        - Src:             'mempool-datastack.c:177,4'
          Dst:             i_memcpy
    - functionName:    pool_data_stack_free
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:154,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:155,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:156,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-datastack.c:155,3'
          Dst:             i_panic
    - functionName:    pool_data_stack_malloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         5
      ICount:          45
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - t_malloc0
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:143,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:144,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:146,19'
              BranchSideFuncs:
                - t_malloc0
      Callsites:
        - Src:             'mempool-datastack.c:144,3'
          Dst:             i_panic
        - Src:             'mempool-datastack.c:146,9'
          Dst:             t_malloc0
    - functionName:    pool_data_stack_unref
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         9
      ICount:          67
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:129,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:130,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:132,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'mempool-datastack.c:133,2'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:133,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:133,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-datastack.c:130,3'
          Dst:             i_panic
        - Src:             'mempool-datastack.c:133,2'
          Dst:             i_panic
    - functionName:    pool_data_stack_ref
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         5
      ICount:          45
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:118,6'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:119,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-datastack.c:121,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-datastack.c:119,3'
          Dst:             i_panic
    - functionName:    pool_data_stack_get_name
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    pool_datastack_create
      functionSourceFile: '/src/dovecot/src/lib/mempool-datastack.c'
      linkageType:     externalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - t_malloc0
      functionUses:    44
      BranchProfiles:
        - Branch String:   'mempool-datastack.c:101,10'
          Branch Sides:
            - BranchSide:      'mempool-datastack.c:99,25'
              BranchSideFuncs:
                - malloc_multiply_check.8203
                - t_malloc0
            - BranchSide:      'mempool-datastack.c:101,10'
              BranchSideFuncs:
                - malloc_multiply_check.8203
                - t_malloc0
      Callsites:
        - Src:             'mempool-datastack.c:101,10'
          Dst:             malloc_multiply_check
        - Src:             'mempool-datastack.c:101,10'
          Dst:             t_malloc0
    - functionName:    pool_system_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_system_realloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         17
      ICount:          101
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - i_fatal_status
        - i_panic
        - malloc_usable_size
        - realloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-system.c:136,2'
          Branch Sides:
            - BranchSide:      'mempool-system.c:136,2'
              BranchSideFuncs:
                - realloc
                - i_fatal_status
                - i_panic
            - BranchSide:      'mempool-system.c:136,2'
              BranchSideFuncs:
                - malloc_usable_size
                - realloc
                - i_fatal_status
                - i_panic
        - Branch String:   'mempool-system.c:136,2'
          Branch Sides:
            - BranchSide:      'mempool-system.c:136,2'
              BranchSideFuncs:
                - realloc
                - i_fatal_status
                - i_panic
            - BranchSide:      'mempool-system.c:136,2'
              BranchSideFuncs:
                - malloc_usable_size
                - realloc
                - i_fatal_status
                - i_panic
        - Branch String:   'mempool-system.c:136,2'
          Branch Sides:
            - BranchSide:      'mempool-system.c:136,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-system.c:140,16'
              BranchSideFuncs:
                - realloc
                - i_fatal_status
        - Branch String:   'mempool-system.c:141,6'
          Branch Sides:
            - BranchSide:      'mempool-system.c:143,28'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'mempool-system.c:146,6'
              BranchSideFuncs: []
        - Branch String:   'mempool-system.c:146,6'
          Branch Sides:
            - BranchSide:      'mempool-system.c:146,6'
              BranchSideFuncs: []
            - BranchSide:      'mempool-system.c:148,19'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-system.c:136,2'
          Dst:             malloc_usable_size
        - Src:             'mempool-system.c:136,2'
          Dst:             i_panic
        - Src:             'mempool-system.c:140,8'
          Dst:             realloc
        - Src:             'mempool-system.c:142,3'
          Dst:             i_fatal_status
    - functionName:    malloc_usable_size
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    pool_system_malloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - calloc
        - i_fatal_status
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-system.c:106,6'
          Branch Sides:
            - BranchSide:      'mempool-system.c:108,28'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'mempool-system.c:114,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-system.c:105,8'
          Dst:             calloc
        - Src:             'mempool-system.c:107,3'
          Dst:             i_fatal_status
    - functionName:    pool_system_unref
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_system_ref
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_system_get_name
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_system_free
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     externalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_system_clear
      functionSourceFile: '/src/dovecot/src/lib/mempool-system.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool-system.c:157,2'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    pool_unsafe_data_stack_get_max_easy_alloc_size
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_get_bytes_available
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool-unsafe-datastack.c:137,9'
          Dst:             t_get_bytes_available
    - functionName:    pool_unsafe_data_stack_clear
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_unsafe_data_stack_realloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         16
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - i_panic
        - t_malloc_no0
        - t_try_realloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mempool-unsafe-datastack.c:113,2'
          Branch Sides:
            - BranchSide:      'mempool-unsafe-datastack.c:113,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mempool-unsafe-datastack.c:116,6'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8258
        - Branch String:   'mempool-unsafe-datastack.c:116,6'
          Branch Sides:
            - BranchSide:      'mempool-unsafe-datastack.c:117,10'
              BranchSideFuncs: []
            - BranchSide:      'mempool-unsafe-datastack.c:119,21'
              BranchSideFuncs:
                - t_try_realloc
                - t_malloc_no0
                - i_memcpy.8258
        - Branch String:   'mempool-unsafe-datastack.c:119,6'
          Branch Sides:
            - BranchSide:      'mempool-unsafe-datastack.c:120,26'
              BranchSideFuncs: []
            - BranchSide:      'mempool-unsafe-datastack.c:126,18'
              BranchSideFuncs: []
        - Branch String:   'mempool-unsafe-datastack.c:121,7'
          Branch Sides:
            - BranchSide:      'mempool-unsafe-datastack.c:122,4'
              BranchSideFuncs:
                - i_memcpy.8258
            - BranchSide:      'mempool-unsafe-datastack.c:123,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mempool-unsafe-datastack.c:113,2'
          Dst:             i_panic
        - Src:             'mempool-unsafe-datastack.c:119,7'
          Dst:             t_try_realloc
        - Src:             'mempool-unsafe-datastack.c:120,13'
          Dst:             t_malloc_no0
        - Src:             'mempool-unsafe-datastack.c:122,4'
          Dst:             i_memcpy
    - functionName:    pool_unsafe_data_stack_free
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_unsafe_data_stack_malloc
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_malloc0
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mempool-unsafe-datastack.c:99,9'
          Dst:             t_malloc0
    - functionName:    pool_unsafe_data_stack_unref
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_unsafe_data_stack_ref
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_unsafe_data_stack_get_name
      functionSourceFile: '/src/dovecot/src/lib/mempool-unsafe-datastack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmap_get_page_size
      functionSourceFile: '/src/dovecot/src/lib/mmap-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - sysconf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mmap-util.c:46,6'
          Branch Sides:
            - BranchSide:      'mmap-util.c:46,6'
              BranchSideFuncs:
                - sysconf
                - i_panic
                - i_panic
            - BranchSide:      'mmap-util.c:46,6'
              BranchSideFuncs:
                - sysconf
                - i_panic
                - i_panic
        - Branch String:   'mmap-util.c:46,6'
          Branch Sides:
            - BranchSide:      'mmap-util.c:47,10'
              BranchSideFuncs: []
            - BranchSide:      'mmap-util.c:48,13'
              BranchSideFuncs:
                - sysconf
                - i_panic
                - i_panic
        - Branch String:   'mmap-util.c:49,2'
          Branch Sides:
            - BranchSide:      'mmap-util.c:49,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mmap-util.c:50,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'mmap-util.c:50,2'
          Branch Sides:
            - BranchSide:      'mmap-util.c:50,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mmap-util.c:51,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'mmap-util.c:48,13'
          Dst:             sysconf
        - Src:             'mmap-util.c:49,2'
          Dst:             i_panic
        - Src:             'mmap-util.c:50,2'
          Dst:             i_panic
    - functionName:    sysconf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmap_rw_file
      functionSourceFile: '/src/dovecot/src/lib/mmap-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - length
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmap_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mmap-util.c:39,9'
          Dst:             mmap_file
    - functionName:    mmap_file
      functionSourceFile: '/src/dovecot/src/lib/mmap-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - fd
        - length
        - prot
      BBCount:         15
      ICount:          90
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - fstat
        - i_panic
        - mmap
      functionUses:    2
      BranchProfiles:
        - Branch String:   'mmap-util.c:12,6'
          Branch Sides:
            - BranchSide:      'mmap-util.c:13,3'
              BranchSideFuncs: []
            - BranchSide:      'mmap-util.c:23,23'
              BranchSideFuncs:
                - mmap
                - i_panic
        - Branch String:   'mmap-util.c:24,6'
          Branch Sides:
            - BranchSide:      'mmap-util.c:25,3'
              BranchSideFuncs: []
            - BranchSide:      'mmap-util.c:27,2'
              BranchSideFuncs:
                - mmap
                - i_panic
        - Branch String:   'mmap-util.c:27,2'
          Branch Sides:
            - BranchSide:      'mmap-util.c:27,2'
              BranchSideFuncs:
                - mmap
                - i_panic
            - BranchSide:      'mmap-util.c:27,2'
              BranchSideFuncs:
                - mmap
                - i_panic
        - Branch String:   'mmap-util.c:27,2'
          Branch Sides:
            - BranchSide:      'mmap-util.c:27,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'mmap-util.c:29,21'
              BranchSideFuncs:
                - mmap
      Callsites:
        - Src:             'mmap-util.c:12,6'
          Dst:             fstat
        - Src:             'mmap-util.c:27,2'
          Dst:             i_panic
        - Src:             'mmap-util.c:29,9'
          Dst:             mmap
    - functionName:    mmap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmap_ro_file
      functionSourceFile: '/src/dovecot/src/lib/mmap-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - length
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmap_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mmap-util.c:34,9'
          Dst:             mmap_file
    - functionName:    module_check_missing_plugin_dependencies
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - module
        - all_modules
        - error_r
      BBCount:         28
      ICount:          175
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - dlsym
        - str_c
        - str_printfa
        - strcmp
        - strlen
        - strncmp
        - t_str_new
        - t_strconcat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:117,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:118,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:120,2'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:120,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:121,17'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
            - BranchSide:      'module-dir.c:142,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:122,3'
          Branch Sides:
            - BranchSide:      'module-dir.c:123,16'
              BranchSideFuncs:
                - strncmp
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strcmp
            - BranchSide:      'module-dir.c:128,7'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:123,42'
          Branch Sides:
            - BranchSide:      'module-dir.c:124,9'
              BranchSideFuncs:
                - strcmp
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
            - BranchSide:      'module-dir.c:127,3'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:124,30'
          Branch Sides:
            - BranchSide:      'module-dir.c:125,16'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
            - BranchSide:      'module-dir.c:126,5'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:123,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:126,5'
              BranchSideFuncs:
                - strlen
                - strncmp
                - strcmp
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
            - BranchSide:      'module-dir.c:127,3'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:128,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:129,13'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
            - BranchSide:      'module-dir.c:141,2'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_printfa
                - str_c
                - str_printfa
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:132,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:133,17'
              BranchSideFuncs:
                - str_printfa
                - str_c
            - BranchSide:      'module-dir.c:138,21'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'module-dir.c:116,8'
          Dst:             t_strconcat
        - Src:             'module-dir.c:115,9'
          Dst:             dlsym
        - Src:             'module-dir.c:121,9'
          Dst:             strlen
        - Src:             'module-dir.c:123,8'
          Dst:             strncmp
        - Src:             'module-dir.c:125,9'
          Dst:             strcmp
        - Src:             'module-dir.c:129,13'
          Dst:             t_str_new
        - Src:             'module-dir.c:130,4'
          Dst:             str_printfa
        - Src:             'module-dir.c:133,5'
          Dst:             str_printfa
        - Src:             'module-dir.c:138,15'
          Dst:             str_c
    - functionName:    dlsym
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    module_check_wrong_binary_dependency
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - module
        - error_r
      BBCount:         13
      ICount:          110
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - dlsym
        - str_array_find
        - str_c
        - str_printfa
        - t_str_new
        - t_strconcat
        - t_strsplit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:80,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:81,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:83,28'
              BranchSideFuncs:
                - t_strconcat
                - dlsym
                - t_strsplit
                - str_array_find
                - t_str_new
                - str_printfa
                - str_printfa
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:85,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:86,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:88,21'
              BranchSideFuncs:
                - t_strsplit
                - str_array_find
                - t_str_new
                - str_printfa
                - str_printfa
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:89,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:90,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:92,11'
              BranchSideFuncs:
                - t_str_new
                - str_printfa
                - str_printfa
                - str_printfa
                - str_c
                - str_printfa
        - Branch String:   'module-dir.c:95,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:96,15'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_c
            - BranchSide:      'module-dir.c:98,15'
              BranchSideFuncs:
                - str_printfa
                - str_printfa
                - str_c
      Callsites:
        - Src:             'module-dir.c:83,16'
          Dst:             t_strconcat
        - Src:             'module-dir.c:84,15'
          Dst:             dlsym
        - Src:             'module-dir.c:88,10'
          Dst:             t_strsplit
        - Src:             'module-dir.c:89,6'
          Dst:             str_array_find
        - Src:             'module-dir.c:92,11'
          Dst:             t_str_new
        - Src:             'module-dir.c:93,2'
          Dst:             str_printfa
        - Src:             'module-dir.c:96,3'
          Dst:             str_printfa
        - Src:             'module-dir.c:98,3'
          Dst:             str_printfa
        - Src:             'module-dir.c:99,2'
          Dst:             str_printfa
        - Src:             'module-dir.c:100,13'
          Dst:             str_c
    - functionName:    versions_equal
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str1
        - str2
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:171,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:172,8'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:177,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:172,21'
          Branch Sides:
            - BranchSide:      'module-dir.c:172,25'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:173,4'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:172,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:173,4'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:174,7'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    get_symbol
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - module
        - symbol
        - quiet
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - module_get_symbol
        - module_get_symbol_quiet
      functionUses:    4
      BranchProfiles:
        - Branch String:   'module-dir.c:51,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:52,34'
              BranchSideFuncs:
                - module_get_symbol_quiet
            - BranchSide:      'module-dir.c:54,27'
              BranchSideFuncs:
                - module_get_symbol
      Callsites:
        - Src:             'module-dir.c:52,10'
          Dst:             module_get_symbol_quiet
        - Src:             'module-dir.c:54,9'
          Dst:             module_get_symbol
    - functionName:    module_get_symbol_quiet
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - module
        - symbol
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dlerror
        - dlsym
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'module-dir.c:27,8'
          Dst:             dlerror
        - Src:             'module-dir.c:29,9'
          Dst:             dlsym
    - functionName:    module_get_symbol
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - module
        - symbol
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dlerror
        - i_error
        - module_get_symbol_quiet
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:38,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:38,6'
              BranchSideFuncs:
                - dlerror
                - i_error
            - BranchSide:      'module-dir.c:39,11'
              BranchSideFuncs:
                - dlerror
                - i_error
        - Branch String:   'module-dir.c:40,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:42,5'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'module-dir.c:45,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:37,8'
          Dst:             module_get_symbol_quiet
        - Src:             'module-dir.c:39,11'
          Dst:             dlerror
        - Src:             'module-dir.c:41,4'
          Dst:             i_error
    - functionName:    dlerror
      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:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    quiet_dlopen
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - flags
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dlopen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'module-dir.c:148,9'
          Dst:             dlopen
    - functionName:    dlopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    module_load
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - name
        - set
        - all_modules
        - module_r
        - error_r
      BBCount:         48
      ICount:          333
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - dlerror
        - dlopen
        - get_symbol
        - i_debug
        - i_strdup
        - malloc_multiply_check
        - module_check_missing_plugin_dependencies
        - module_check_wrong_binary_dependency
        - module_free
        - p_malloc
        - quiet_dlopen
        - t_strconcat
        - t_strdup_printf
        - versions_equal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:194,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:195,25'
              BranchSideFuncs:
                - quiet_dlopen
                - malloc_multiply_check.8381
                - p_malloc.8374
                - i_strdup
                - i_strdup
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
                - versions_equal
                - t_strdup_printf
                - module_free
                - dlerror
                - i_debug
            - BranchSide:      'module-dir.c:207,19'
              BranchSideFuncs:
                - dlopen
                - malloc_multiply_check.8381
                - p_malloc.8374
                - i_strdup
                - i_strdup
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
                - versions_equal
                - t_strdup_printf
                - module_free
                - dlerror
                - t_strdup_printf
                - dlopen
        - Branch String:   'module-dir.c:196,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:197,8'
              BranchSideFuncs:
                - dlerror
                - i_debug
            - BranchSide:      'module-dir.c:206,2'
              BranchSideFuncs:
                - malloc_multiply_check.8381
                - p_malloc.8374
                - i_strdup
                - i_strdup
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
                - versions_equal
                - t_strdup_printf
                - module_free
        - Branch String:   'module-dir.c:197,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:202,6'
              BranchSideFuncs:
                - dlerror
                - i_debug
            - BranchSide:      'module-dir.c:204,4'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:215,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:216,5'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:220,3'
              BranchSideFuncs:
                - malloc_multiply_check.8381
                - p_malloc.8374
                - i_strdup
                - i_strdup
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
                - versions_equal
                - t_strdup_printf
                - module_free
        - Branch String:   'module-dir.c:228,19'
          Branch Sides:
            - BranchSide:      'module-dir.c:228,17'
              BranchSideFuncs:
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
                - versions_equal
                - t_strdup_printf
                - module_free
            - BranchSide:      'module-dir.c:229,14'
              BranchSideFuncs:
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
                - versions_equal
                - t_strdup_printf
                - module_free
        - Branch String:   'module-dir.c:230,29'
          Branch Sides:
            - BranchSide:      'module-dir.c:231,23'
              BranchSideFuncs:
                - versions_equal
                - t_strdup_printf
                - module_free
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:241,14'
              BranchSideFuncs:
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
        - Branch String:   'module-dir.c:230,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:234,5'
              BranchSideFuncs:
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:241,14'
              BranchSideFuncs:
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - t_strconcat
                - get_symbol
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
        - Branch String:   'module-dir.c:249,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:250,3'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:252,7'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
        - Branch String:   'module-dir.c:252,28'
          Branch Sides:
            - BranchSide:      'module-dir.c:252,31'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:253,6'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
        - Branch String:   'module-dir.c:252,55'
          Branch Sides:
            - BranchSide:      'module-dir.c:253,6'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
                - t_strdup_printf
            - BranchSide:      'module-dir.c:257,51'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
        - Branch String:   'module-dir.c:252,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:256,4'
              BranchSideFuncs:
                - t_strdup_printf
                - i_debug
                - module_free
            - BranchSide:      'module-dir.c:257,51'
              BranchSideFuncs:
                - module_check_wrong_binary_dependency
                - i_debug
                - module_free
                - module_check_missing_plugin_dependencies
        - Branch String:   'module-dir.c:257,13'
          Branch Sides:
            - BranchSide:      'module-dir.c:259,55'
              BranchSideFuncs:
                - module_check_missing_plugin_dependencies
                - i_debug
                - module_free
            - BranchSide:      'module-dir.c:259,2'
              BranchSideFuncs:
                - i_debug
                - module_free
        - Branch String:   'module-dir.c:264,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:265,3'
              BranchSideFuncs:
                - module_free
            - BranchSide:      'module-dir.c:270,6'
              BranchSideFuncs:
                - i_debug
        - Branch String:   'module-dir.c:270,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:271,32'
              BranchSideFuncs:
                - i_debug
            - BranchSide:      'module-dir.c:272,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:195,12'
          Dst:             quiet_dlopen
        - Src:             'module-dir.c:202,12'
          Dst:             dlerror
        - Src:             'module-dir.c:198,5'
          Dst:             i_debug
        - Src:             'module-dir.c:207,12'
          Dst:             dlopen
        - Src:             'module-dir.c:210,10'
          Dst:             dlerror
        - Src:             'module-dir.c:209,15'
          Dst:             t_strdup_printf
        - Src:             'module-dir.c:214,13'
          Dst:             dlopen
        - Src:             'module-dir.c:223,11'
          Dst:             malloc_multiply_check
        - Src:             'module-dir.c:223,11'
          Dst:             p_malloc
        - Src:             'module-dir.c:224,17'
          Dst:             i_strdup
        - Src:             'module-dir.c:225,17'
          Dst:             i_strdup
        - Src:             'module-dir.c:229,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:229,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:231,7'
          Dst:             versions_equal
        - Src:             'module-dir.c:232,14'
          Dst:             t_strdup_printf
        - Src:             'module-dir.c:235,3'
          Dst:             module_free
        - Src:             'module-dir.c:241,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:241,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:244,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:244,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:247,22'
          Dst:             t_strconcat
        - Src:             'module-dir.c:247,3'
          Dst:             get_symbol
        - Src:             'module-dir.c:254,14'
          Dst:             t_strdup_printf
        - Src:             'module-dir.c:257,14'
          Dst:             module_check_wrong_binary_dependency
        - Src:             'module-dir.c:259,14'
          Dst:             module_check_missing_plugin_dependencies
        - Src:             'module-dir.c:266,3'
          Dst:             module_free
        - Src:             'module-dir.c:271,3'
          Dst:             i_debug
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    module_free
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - module
      BBCount:         20
      ICount:          99
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - dlclose
        - getenv
        - i_error
        - p_free_internal
      functionUses:    3
      BranchProfiles:
        - Branch String:   'module-dir.c:59,29'
          Branch Sides:
            - BranchSide:      'module-dir.c:59,32'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
                - dlclose
                - i_error
            - BranchSide:      'module-dir.c:64,6'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
                - dlclose
                - i_error
        - Branch String:   'module-dir.c:59,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:60,3'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
                - dlclose
                - i_error
            - BranchSide:      'module-dir.c:64,6'
              BranchSideFuncs:
                - getenv
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
                - dlclose
                - i_error
        - Branch String:   'module-dir.c:64,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:65,15'
              BranchSideFuncs:
                - dlclose
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
                - i_error
            - BranchSide:      'module-dir.c:68,2'
              BranchSideFuncs:
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
        - Branch String:   'module-dir.c:65,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:66,38'
              BranchSideFuncs:
                - i_error
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
            - BranchSide:      'module-dir.c:67,2'
              BranchSideFuncs:
                - p_free_internal.8393
                - p_free_internal.8393
                - p_free_internal.8393
      Callsites:
        - Src:             'module-dir.c:64,6'
          Dst:             getenv
        - Src:             'module-dir.c:65,7'
          Dst:             dlclose
        - Src:             'module-dir.c:66,4'
          Dst:             i_error
        - Src:             'module-dir.c:68,2'
          Dst:             p_free_internal
        - Src:             'module-dir.c:69,2'
          Dst:             p_free_internal
        - Src:             'module-dir.c:70,2'
          Dst:             p_free_internal
    - functionName:    dlclose
      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:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    module_is_loaded
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - modules
        - name
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - module_dir_find
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'module-dir.c:338,9'
          Dst:             module_dir_find
    - functionName:    module_dir_find
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - modules
        - name
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - strcmp
        - strlen
        - strncmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:326,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:327,15'
              BranchSideFuncs:
                - strncmp
                - strcmp
            - BranchSide:      'module-dir.c:333,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:327,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:328,8'
              BranchSideFuncs:
                - strcmp
                - strncmp
            - BranchSide:      'module-dir.c:332,2'
              BranchSideFuncs:
                - strncmp
                - strcmp
        - Branch String:   'module-dir.c:328,34'
          Branch Sides:
            - BranchSide:      'module-dir.c:329,15'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:330,12'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:328,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:330,12'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:331,3'
              BranchSideFuncs:
                - strncmp
                - strcmp
      Callsites:
        - Src:             'module-dir.c:324,15'
          Dst:             strlen
        - Src:             'module-dir.c:327,7'
          Dst:             strncmp
        - Src:             'module-dir.c:329,8'
          Dst:             strcmp
    - functionName:    module_want_load
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - names
        - name
      BBCount:         17
      ICount:          91
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:288,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:289,8'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:292,6'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'module-dir.c:289,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:290,4'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:291,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'module-dir.c:292,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:293,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:295,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'module-dir.c:295,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:296,15'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:301,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:296,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:297,5'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:300,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'module-dir.c:296,7'
          Dst:             strcmp
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    module_name_cmp
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - n1
        - n2
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_begins_builtin_success
        - strcmp
        - strncmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:280,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:281,8'
              BranchSideFuncs:
                - strncmp
                - str_begins_builtin_success.8398
                - strcmp
            - BranchSide:      'module-dir.c:281,8'
              BranchSideFuncs:
                - str_begins_builtin_success.8398
                - strncmp
                - str_begins_builtin_success.8398
                - strcmp
        - Branch String:   'module-dir.c:281,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:281,8'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:281,8'
              BranchSideFuncs:
                - str_begins_builtin_success.8398
                - strcmp
      Callsites:
        - Src:             'module-dir.c:280,8'
          Dst:             strncmp
        - Src:             'module-dir.c:280,8'
          Dst:             str_begins_builtin_success
        - Src:             'module-dir.c:281,8'
          Dst:             strncmp
        - Src:             'module-dir.c:281,8'
          Dst:             str_begins_builtin_success
        - Src:             'module-dir.c:282,9'
          Dst:             strcmp
    - functionName:    str_begins_builtin_success
      functionSourceFile: '/src/dovecot/src/lib/./strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle_len
        - suffix_r
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:176,6'
          Branch Sides:
            - BranchSide:      './mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    check_duplicates
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - names
        - name
        - dir
      BBCount:         15
      ICount:          102
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - array_get_i
        - i_fatal
        - i_panic
        - module_file_get_name
        - strcmp
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:312,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:312,30'
              BranchSideFuncs:
                - t_push
                - module_file_get_name
                - strcmp
                - t_pop
                - i_panic
                - i_fatal
            - BranchSide:      'module-dir.c:319,1'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:315,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:317,5'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'module-dir.c:318,4'
              BranchSideFuncs:
                - t_pop
                - t_push
                - module_file_get_name
                - strcmp
                - i_fatal
                - i_panic
        - Branch String:   'module-dir.c:318,4'
          Branch Sides:
            - BranchSide:      'module-dir.c:318,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:318,4'
              BranchSideFuncs:
                - t_push
                - module_file_get_name
                - strcmp
                - t_pop
                - i_panic
                - i_fatal
      Callsites:
        - Src:             'module-dir.c:310,14'
          Dst:             module_file_get_name
        - Src:             'module-dir.c:311,12'
          Dst:             array_get_i
        - Src:             'module-dir.c:312,30'
          Dst:             t_push
        - Src:             'module-dir.c:313,9'
          Dst:             module_file_get_name
        - Src:             'module-dir.c:315,7'
          Dst:             strcmp
        - Src:             'module-dir.c:316,4'
          Dst:             i_fatal
        - Src:             'module-dir.c:318,4'
          Dst:             t_pop
        - Src:             'module-dir.c:318,4'
          Dst:             i_panic
    - functionName:    module_file_get_name
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fname
      BBCount:         22
      ICount:          114
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - str_begins_builtin_success
        - strncmp
        - strstr
        - t_strdup_until
      functionUses:    4
      BranchProfiles:
        - Branch String:   'module-dir.c:605,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:607,11'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:607,11'
              BranchSideFuncs:
                - str_begins_builtin_success.8398
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:607,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:608,8'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:611,7'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:608,16'
          Branch Sides:
            - BranchSide:      'module-dir.c:608,20'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:609,4'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:608,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:609,4'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:610,2'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:611,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:612,11'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
            - BranchSide:      'module-dir.c:614,13'
              BranchSideFuncs:
                - strstr
                - t_strdup_until
        - Branch String:   'module-dir.c:615,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:616,10'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:618,24'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'module-dir.c:605,8'
          Dst:             strncmp
        - Src:             'module-dir.c:605,8'
          Dst:             str_begins_builtin_success
        - Src:             'module-dir.c:614,6'
          Dst:             strstr
        - Src:             'module-dir.c:618,9'
          Dst:             t_strdup_until
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.8377
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.8377
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    module_dir_is_all_loaded
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - old_modules
        - module_names
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - module_is_loaded
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:369,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:370,25'
              BranchSideFuncs:
                - module_is_loaded
            - BranchSide:      'module-dir.c:373,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:370,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:371,4'
              BranchSideFuncs:
                - module_is_loaded
            - BranchSide:      'module-dir.c:372,2'
              BranchSideFuncs:
                - module_is_loaded
      Callsites:
        - Src:             'module-dir.c:370,8'
          Dst:             module_is_loaded
    - functionName:    module_name_drop_suffix
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
        - strlen
        - t_strndup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'module-dir.c:626,14'
          Branch Sides:
            - BranchSide:      'module-dir.c:626,24'
              BranchSideFuncs:
                - strcmp
                - t_strndup
            - BranchSide:      'module-dir.c:626,14'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:626,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:626,6'
              BranchSideFuncs:
                - t_strndup
            - BranchSide:      'module-dir.c:627,20'
              BranchSideFuncs:
                - t_strndup
      Callsites:
        - Src:             'module-dir.c:625,8'
          Dst:             strlen
        - Src:             'module-dir.c:626,17'
          Dst:             strcmp
        - Src:             'module-dir.c:627,10'
          Dst:             t_strndup
    - functionName:    module_get_plugin_name
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - module
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - module_name_drop_suffix
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'module-dir.c:633,9'
          Dst:             module_name_drop_suffix
    - functionName:    module_dir_load
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dir
        - module_names
        - set
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - module_dir_load_missing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'module-dir.c:597,9'
          Dst:             module_dir_load_missing
    - functionName:    module_dir_load_missing
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - old_modules
        - dir
        - module_names
        - set
      BBCount:         9
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - i_error
        - i_fatal
        - module_dir_try_load_missing
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:519,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:519,6'
              BranchSideFuncs:
                - i_error
                - i_fatal
            - BranchSide:      'module-dir.c:521,7'
              BranchSideFuncs:
                - i_error
                - i_fatal
        - Branch String:   'module-dir.c:521,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:522,18'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'module-dir.c:524,18'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'module-dir.c:519,6'
          Dst:             module_dir_try_load_missing
        - Src:             'module-dir.c:522,4'
          Dst:             i_fatal
        - Src:             'module-dir.c:524,4'
          Dst:             i_error
    - functionName:    module_dir_try_load_missing
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - modules
        - dir
        - module_names
        - set
        - error_r
      BBCount:         11
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - module_dir_load_real
        - module_names_fix
        - p_free_internal
        - t_pop
        - t_push
        - t_strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'module-dir.c:505,4'
          Branch Sides:
            - BranchSide:      'module-dir.c:505,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:505,4'
              BranchSideFuncs:
                - t_strdup
                - p_free_internal.8393
      Callsites:
        - Src:             'module-dir.c:501,2'
          Dst:             t_push
        - Src:             'module-dir.c:503,9'
          Dst:             module_names_fix
        - Src:             'module-dir.c:502,9'
          Dst:             module_dir_load_real
        - Src:             'module-dir.c:505,4'
          Dst:             t_pop
        - Src:             'module-dir.c:505,4'
          Dst:             i_panic
        - Src:             'module-dir.c:506,13'
          Dst:             t_strdup
        - Src:             'module-dir.c:507,2'
          Dst:             p_free_internal
    - functionName:    module_names_fix
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - module_names
      BBCount:         17
      ICount:          129
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - i_strcmp_p
        - malloc_multiply_check
        - module_file_get_name
        - qsort
        - str_array_length
        - strcmp
        - t_malloc0
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:346,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:347,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:351,16'
              BranchSideFuncs:
                - str_array_length
                - malloc_multiply_check.8381
                - t_malloc0
                - qsort
                - strcmp
                - module_file_get_name
        - Branch String:   'module-dir.c:352,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:353,41'
              BranchSideFuncs:
                - module_file_get_name
                - qsort
                - strcmp
            - BranchSide:      'module-dir.c:356,2'
              BranchSideFuncs:
                - qsort
                - strcmp
        - Branch String:   'module-dir.c:357,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:358,14'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:361,9'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:358,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:359,23'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'module-dir.c:360,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'module-dir.c:351,16'
          Dst:             str_array_length
        - Src:             'module-dir.c:351,16'
          Dst:             malloc_multiply_check
        - Src:             'module-dir.c:351,16'
          Dst:             t_malloc0
        - Src:             'module-dir.c:353,20'
          Dst:             module_file_get_name
        - Src:             'module-dir.c:356,2'
          Dst:             qsort
        - Src:             'module-dir.c:356,2'
          Dst:             i_strcmp_p
        - Src:             'module-dir.c:358,7'
          Dst:             strcmp
    - functionName:    module_dir_load_real
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _modules
        - dir
        - module_names
        - set
        - error_r
      BBCount:         85
      ICount:          489
      EdgeCount:       110
      CyclomaticComplexity: 27
      functionsReached:
        - __errno_location
        - array_append_i
        - array_create_i
        - array_get_i
        - array_sort_i
        - check_duplicates
        - closedir
        - i_debug
        - i_error
        - i_panic
        - i_strdup_printf
        - module_dir_is_all_loaded
        - module_file_get_name
        - module_is_loaded
        - module_load
        - module_name_cmp
        - module_name_drop_suffix
        - module_want_load
        - opendir
        - p_strdup
        - pool_alloconly_create
        - pool_unref
        - readdir
        - strlen
        - strstr
        - t_pop
        - t_push
        - t_strconcat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:393,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:394,32'
              BranchSideFuncs:
                - module_dir_is_all_loaded
                - opendir
                - pool_alloconly_create
                - array_create_i.8405
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - i_panic
                - i_strdup_printf
                - __errno_location
                - i_debug
            - BranchSide:      'module-dir.c:398,6'
              BranchSideFuncs:
                - opendir
                - pool_alloconly_create
                - array_create_i.8405
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - i_panic
                - i_strdup_printf
                - __errno_location
                - i_debug
        - Branch String:   'module-dir.c:394,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:395,4'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:396,2'
              BranchSideFuncs:
                - opendir
                - pool_alloconly_create
                - array_create_i.8405
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - i_panic
                - i_strdup_printf
                - __errno_location
                - i_debug
        - Branch String:   'module-dir.c:398,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:399,49'
              BranchSideFuncs:
                - i_debug
                - opendir
                - pool_alloconly_create
                - array_create_i.8405
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - i_panic
                - i_strdup_printf
                - __errno_location
            - BranchSide:      'module-dir.c:401,17'
              BranchSideFuncs:
                - opendir
                - pool_alloconly_create
                - array_create_i.8405
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - i_panic
                - i_strdup_printf
                - __errno_location
        - Branch String:   'module-dir.c:402,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:403,56'
              BranchSideFuncs:
                - i_strdup_printf
                - __errno_location
            - BranchSide:      'module-dir.c:412,9'
              BranchSideFuncs:
                - pool_alloconly_create
                - array_create_i.8405
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - i_panic
        - Branch String:   'module-dir.c:404,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:407,4'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:409,10'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'module-dir.c:416,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:417,10'
              BranchSideFuncs:
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - i_panic
            - BranchSide:      'module-dir.c:433,6'
              BranchSideFuncs:
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
        - Branch String:   'module-dir.c:419,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:420,4'
              BranchSideFuncs:
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - i_panic
            - BranchSide:      'module-dir.c:422,14'
              BranchSideFuncs:
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - i_panic
        - Branch String:   'module-dir.c:423,17'
          Branch Sides:
            - BranchSide:      'module-dir.c:423,27'
              BranchSideFuncs:
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - i_panic
            - BranchSide:      'module-dir.c:424,4'
              BranchSideFuncs:
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - i_panic
        - Branch String:   'module-dir.c:423,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:424,4'
              BranchSideFuncs:
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - i_panic
            - BranchSide:      'module-dir.c:426,3'
              BranchSideFuncs:
                - t_push
                - check_duplicates
                - t_pop
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - i_panic
        - Branch String:   'module-dir.c:428,5'
          Branch Sides:
            - BranchSide:      'module-dir.c:428,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:428,5'
              BranchSideFuncs:
                - p_strdup
                - array_append_i.8400
                - __errno_location
                - readdir
                - __errno_location
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
                - i_strdup_printf
                - strstr
                - strlen
                - t_push
                - check_duplicates
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:433,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:434,56'
              BranchSideFuncs:
                - i_strdup_printf
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
            - BranchSide:      'module-dir.c:435,15'
              BranchSideFuncs:
                - closedir
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
        - Branch String:   'module-dir.c:435,25'
          Branch Sides:
            - BranchSide:      'module-dir.c:435,29'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
                - i_strdup_printf
            - BranchSide:      'module-dir.c:437,7'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
        - Branch String:   'module-dir.c:435,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:436,57'
              BranchSideFuncs:
                - i_strdup_printf
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
            - BranchSide:      'module-dir.c:437,7'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - pool_unref.8399
        - Branch String:   'module-dir.c:437,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:438,3'
              BranchSideFuncs:
                - pool_unref.8399
            - BranchSide:      'module-dir.c:442,2'
              BranchSideFuncs:
                - array_sort_i
                - array_get_i.8396
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
        - Branch String:   'module-dir.c:447,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:448,19'
              BranchSideFuncs:
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
            - BranchSide:      'module-dir.c:449,9'
              BranchSideFuncs:
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
        - Branch String:   'module-dir.c:449,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:449,30'
              BranchSideFuncs:
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
            - BranchSide:      'module-dir.c:477,2'
              BranchSideFuncs:
                - pool_unref.8399
                - i_strdup_printf
        - Branch String:   'module-dir.c:455,61'
          Branch Sides:
            - BranchSide:      'module-dir.c:456,24'
              BranchSideFuncs:
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - i_panic
                - i_strdup_printf
            - BranchSide:      'module-dir.c:457,11'
              BranchSideFuncs:
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - i_panic
        - Branch String:   'module-dir.c:455,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:457,11'
              BranchSideFuncs:
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - i_panic
            - BranchSide:      'module-dir.c:459,23'
              BranchSideFuncs:
                - t_strconcat
                - module_load
                - i_error
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - module_is_loaded
                - i_panic
                - i_strdup_printf
        - Branch String:   'module-dir.c:463,13'
          Branch Sides:
            - BranchSide:      'module-dir.c:465,11'
              BranchSideFuncs:
                - i_strdup_printf
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_panic
            - BranchSide:      'module-dir.c:468,44'
              BranchSideFuncs:
                - i_error
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_strdup_printf
                - i_panic
        - Branch String:   'module-dir.c:472,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:473,18'
              BranchSideFuncs:
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - i_panic
            - BranchSide:      'module-dir.c:476,4'
              BranchSideFuncs:
                - t_pop
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
                - i_panic
        - Branch String:   'module-dir.c:476,4'
          Branch Sides:
            - BranchSide:      'module-dir.c:476,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:476,4'
              BranchSideFuncs:
                - pool_unref.8399
                - i_strdup_printf
                - t_push
                - module_file_get_name
                - module_name_drop_suffix
                - module_want_load
                - t_pop
                - i_panic
                - module_is_loaded
                - t_strconcat
                - module_load
                - i_error
                - i_strdup_printf
        - Branch String:   'module-dir.c:479,27'
          Branch Sides:
            - BranchSide:      'module-dir.c:479,31'
              BranchSideFuncs:
                - i_strdup_printf
            - BranchSide:      'module-dir.c:489,14'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:479,47'
          Branch Sides:
            - BranchSide:      'module-dir.c:479,51'
              BranchSideFuncs:
                - i_strdup_printf
            - BranchSide:      'module-dir.c:489,14'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:479,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:481,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:489,14'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:481,3'
          Branch Sides:
            - BranchSide:      'module-dir.c:482,10'
              BranchSideFuncs:
                - i_strdup_printf
            - BranchSide:      'module-dir.c:488,2'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:482,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:484,7'
              BranchSideFuncs:
                - i_strdup_printf
            - BranchSide:      'module-dir.c:487,3'
              BranchSideFuncs:
                - i_strdup_printf
      Callsites:
        - Src:             'module-dir.c:394,7'
          Dst:             module_dir_is_all_loaded
        - Src:             'module-dir.c:399,3'
          Dst:             i_debug
        - Src:             'module-dir.c:401,9'
          Dst:             opendir
        - Src:             'module-dir.c:403,14'
          Dst:             i_strdup_printf
        - Src:             'module-dir.c:409,10'
          Dst:             __errno_location
        - Src:             'module-dir.c:412,9'
          Dst:             pool_alloconly_create
        - Src:             'module-dir.c:413,2'
          Dst:             array_create_i
        - Src:             'module-dir.c:416,7'
          Dst:             __errno_location
        - Src:             'module-dir.c:416,23'
          Dst:             readdir
        - Src:             'module-dir.c:422,7'
          Dst:             strstr
        - Src:             'module-dir.c:423,20'
          Dst:             strlen
        - Src:             'module-dir.c:426,3'
          Dst:             t_push
        - Src:             'module-dir.c:427,4'
          Dst:             check_duplicates
        - Src:             'module-dir.c:428,5'
          Dst:             t_pop
        - Src:             'module-dir.c:428,5'
          Dst:             i_panic
        - Src:             'module-dir.c:430,10'
          Dst:             p_strdup
        - Src:             'module-dir.c:431,3'
          Dst:             array_append_i
        - Src:             'module-dir.c:416,47'
          Dst:             __errno_location
        - Src:             'module-dir.c:433,6'
          Dst:             __errno_location
        - Src:             'module-dir.c:434,14'
          Dst:             i_strdup_printf
        - Src:             'module-dir.c:435,6'
          Dst:             closedir
        - Src:             'module-dir.c:436,14'
          Dst:             i_strdup_printf
        - Src:             'module-dir.c:438,3'
          Dst:             pool_unref
        - Src:             'module-dir.c:442,2'
          Dst:             array_sort_i
        - Src:             'module-dir.c:442,2'
          Dst:             module_name_cmp
        - Src:             'module-dir.c:443,12'
          Dst:             array_get_i
        - Src:             'module-dir.c:449,30'
          Dst:             t_push
        - Src:             'module-dir.c:453,19'
          Dst:             module_file_get_name
        - Src:             'module-dir.c:454,21'
          Dst:             module_name_drop_suffix
        - Src:             'module-dir.c:455,8'
          Dst:             module_want_load
        - Src:             'module-dir.c:456,7'
          Dst:             module_is_loaded
        - Src:             'module-dir.c:459,11'
          Dst:             t_strconcat
        - Src:             'module-dir.c:460,10'
          Dst:             module_load
        - Src:             'module-dir.c:464,16'
          Dst:             i_strdup_printf
        - Src:             'module-dir.c:468,5'
          Dst:             i_error
        - Src:             'module-dir.c:476,4'
          Dst:             t_pop
        - Src:             'module-dir.c:476,4'
          Dst:             i_panic
        - Src:             'module-dir.c:477,2'
          Dst:             pool_unref
        - Src:             'module-dir.c:483,16'
          Dst:             i_strdup_printf
    - functionName:    opendir
      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:    readdir
      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:    closedir
      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:    module_dir_unload
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - modules
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - module_dir_deinit
        - module_free
      functionUses:    3
      BranchProfiles:
        - Branch String:   'module-dir.c:586,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:587,10'
              BranchSideFuncs:
                - module_free
            - BranchSide:      'module-dir.c:591,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:584,2'
          Dst:             module_dir_deinit
        - Src:             'module-dir.c:588,3'
          Dst:             module_free
    - functionName:    module_dir_deinit
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - modules
      BBCount:         38
      ICount:          205
      EdgeCount:       46
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - t_malloc0
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'module-dir.c:548,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:549,7'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8381
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:553,6'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8381
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:549,30'
          Branch Sides:
            - BranchSide:      'module-dir.c:549,33'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8381
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:551,2'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8381
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:549,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:550,9'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8381
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:551,2'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8381
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:553,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:554,3'
              BranchSideFuncs: []
            - BranchSide:      'module-dir.c:557,2'
              BranchSideFuncs:
                - t_push
                - malloc_multiply_check.8381
                - t_malloc0
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:559,3'
          Branch Sides:
            - BranchSide:      'module-dir.c:560,8'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:567,10'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:560,31'
          Branch Sides:
            - BranchSide:      'module-dir.c:560,34'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:564,13'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:560,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:561,22'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:564,13'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:567,3'
          Branch Sides:
            - BranchSide:      'module-dir.c:568,13'
              BranchSideFuncs:
                - t_push
                - t_pop
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'module-dir.c:575,4'
              BranchSideFuncs:
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:572,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:572,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:572,6'
              BranchSideFuncs:
                - t_pop
                - i_panic
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:575,4'
          Branch Sides:
            - BranchSide:      'module-dir.c:575,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:575,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'module-dir.c:557,2'
          Dst:             t_push
        - Src:             'module-dir.c:558,9'
          Dst:             malloc_multiply_check
        - Src:             'module-dir.c:558,9'
          Dst:             t_malloc0
        - Src:             'module-dir.c:570,4'
          Dst:             t_push
        - Src:             'module-dir.c:572,6'
          Dst:             t_pop
        - Src:             'module-dir.c:572,6'
          Dst:             i_panic
        - Src:             'module-dir.c:575,4'
          Dst:             t_pop
        - Src:             'module-dir.c:575,4'
          Dst:             i_panic
    - functionName:    module_dir_init
      functionSourceFile: '/src/dovecot/src/lib/module-dir.c'
      linkageType:     externalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - modules
      BBCount:         19
      ICount:          92
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - t_pop
        - t_push
      functionUses:    2
      BranchProfiles:
        - Branch String:   'module-dir.c:533,2'
          Branch Sides:
            - BranchSide:      'module-dir.c:534,8'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:541,1'
              BranchSideFuncs: []
        - Branch String:   'module-dir.c:534,7'
          Branch Sides:
            - BranchSide:      'module-dir.c:535,4'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:540,2'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:536,8'
          Branch Sides:
            - BranchSide:      'module-dir.c:536,30'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
            - BranchSide:      'module-dir.c:539,3'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
        - Branch String:   'module-dir.c:538,6'
          Branch Sides:
            - BranchSide:      'module-dir.c:538,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'module-dir.c:538,6'
              BranchSideFuncs:
                - t_push
                - t_pop
                - i_panic
      Callsites:
        - Src:             'module-dir.c:536,30'
          Dst:             t_push
        - Src:             'module-dir.c:538,6'
          Dst:             t_pop
        - Src:             'module-dir.c:538,6'
          Dst:             i_panic
    - functionName:    net_connect_ip_once
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ip
        - port
        - my_ip
        - sock_type
        - blocking
      BBCount:         27
      ICount:          202
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - bind
        - connect
        - i_close_fd_path
        - i_error
        - i_warning
        - net_ip2addr
        - net_set_nonblock
        - setsockopt
        - sin_set_ip
        - sin_set_port
        - socket
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:191,20'
          Branch Sides:
            - BranchSide:      'net.c:191,23'
              BranchSideFuncs:
                - socket
                - setsockopt
                - net_set_nonblock
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
                - setsockopt
                - i_error
                - i_warning
            - BranchSide:      'net.c:197,2'
              BranchSideFuncs:
                - socket
                - setsockopt
                - net_set_nonblock
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
                - setsockopt
                - i_error
        - Branch String:   'net.c:191,6'
          Branch Sides:
            - BranchSide:      'net.c:192,3'
              BranchSideFuncs:
                - i_warning
                - socket
                - setsockopt
                - net_set_nonblock
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
                - setsockopt
                - i_error
            - BranchSide:      'net.c:197,2'
              BranchSideFuncs:
                - socket
                - setsockopt
                - net_set_nonblock
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
                - setsockopt
                - i_error
        - Branch String:   'net.c:201,6'
          Branch Sides:
            - BranchSide:      'net.c:202,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:207,19'
              BranchSideFuncs:
                - setsockopt
                - net_set_nonblock
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
                - setsockopt
        - Branch String:   'net.c:208,6'
          Branch Sides:
            - BranchSide:      'net.c:209,20'
              BranchSideFuncs:
                - setsockopt
                - net_set_nonblock
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:210,7'
              BranchSideFuncs:
                - net_set_nonblock
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
        - Branch String:   'net.c:210,6'
          Branch Sides:
            - BranchSide:      'net.c:211,20'
              BranchSideFuncs:
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:214,6'
              BranchSideFuncs:
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - sin_set_ip
                - bind
                - net_ip2addr
                - i_error
                - i_close_fd_path
        - Branch String:   'net.c:214,6'
          Branch Sides:
            - BranchSide:      'net.c:215,19'
              BranchSideFuncs:
                - sin_set_ip
                - bind
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
                - net_ip2addr
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:224,18'
              BranchSideFuncs:
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
        - Branch String:   'net.c:216,7'
          Branch Sides:
            - BranchSide:      'net.c:217,47'
              BranchSideFuncs:
                - net_ip2addr
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:221,2'
              BranchSideFuncs:
                - sin_set_ip
                - sin_set_port
                - connect
                - __errno_location
                - i_close_fd_path
        - Branch String:   'net.c:229,14'
          Branch Sides:
            - BranchSide:      'net.c:229,17'
              BranchSideFuncs:
                - __errno_location
                - i_close_fd_path
            - BranchSide:      'net.c:238,9'
              BranchSideFuncs: []
        - Branch String:   'net.c:229,6'
          Branch Sides:
            - BranchSide:      'net.c:234,3'
              BranchSideFuncs:
                - i_close_fd_path
            - BranchSide:      'net.c:238,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:192,3'
          Dst:             i_warning
        - Src:             'net.c:199,7'
          Dst:             socket
        - Src:             'net.c:202,3'
          Dst:             i_error
        - Src:             'net.c:207,8'
          Dst:             setsockopt
        - Src:             'net.c:209,9'
          Dst:             setsockopt
        - Src:             'net.c:211,3'
          Dst:             net_set_nonblock
        - Src:             'net.c:215,3'
          Dst:             sin_set_ip
        - Src:             'net.c:216,7'
          Dst:             bind
        - Src:             'net.c:217,35'
          Dst:             net_ip2addr
        - Src:             'net.c:217,4'
          Dst:             i_error
        - Src:             'net.c:218,4'
          Dst:             i_close_fd_path
        - Src:             'net.c:224,2'
          Dst:             sin_set_ip
        - Src:             'net.c:225,2'
          Dst:             sin_set_port
        - Src:             'net.c:226,8'
          Dst:             connect
        - Src:             'net.c:229,17'
          Dst:             __errno_location
        - Src:             'net.c:234,3'
          Dst:             i_close_fd_path
    - functionName:    socket
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    net_set_nonblock
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - fd
        - nonblock
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fd_set_nonblock
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:380,2'
          Dst:             fd_set_nonblock
    - functionName:    sin_set_ip
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - so
        - ip
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_memcpy
      functionUses:    5
      BranchProfiles:
        - Branch String:   'net.c:133,6'
          Branch Sides:
            - BranchSide:      'net.c:134,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:139,23'
              BranchSideFuncs:
                - i_memcpy.8555
                - i_memcpy.8555
        - Branch String:   'net.c:141,6'
          Branch Sides:
            - BranchSide:      'net.c:142,3'
              BranchSideFuncs:
                - i_memcpy.8555
            - BranchSide:      'net.c:144,3'
              BranchSideFuncs:
                - i_memcpy.8555
      Callsites:
        - Src:             'net.c:142,3'
          Dst:             i_memcpy
        - Src:             'net.c:144,3'
          Dst:             i_memcpy
    - functionName:    bind
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    net_ip2addr
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 955
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - getnameinfo
        - net_handle_gai_error
        - t_malloc_no0
      functionUses:    16
      BranchProfiles:
        - Branch String:   'net.c:935,6'
          Branch Sides:
            - BranchSide:      'net.c:936,9'
              BranchSideFuncs:
                - t_malloc_no0
                - getnameinfo
                - net_handle_gai_error
            - BranchSide:      'net.c:939,13'
              BranchSideFuncs:
                - t_malloc_no0
                - getnameinfo
                - net_handle_gai_error
        - Branch String:   'net.c:939,13'
          Branch Sides:
            - BranchSide:      'net.c:940,10'
              BranchSideFuncs:
                - t_malloc_no0
                - getnameinfo
                - net_handle_gai_error
            - BranchSide:      'net.c:945,3'
              BranchSideFuncs: []
        - Branch String:   'net.c:949,6'
          Branch Sides:
            - BranchSide:      'net.c:951,45'
              BranchSideFuncs:
                - net_handle_gai_error
            - BranchSide:      'net.c:954,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:947,15'
          Dst:             t_malloc_no0
        - Src:             'net.c:949,13'
          Dst:             getnameinfo
        - Src:             'net.c:951,9'
          Dst:             net_handle_gai_error
    - functionName:    sin_set_port
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - so
        - port
      BBCount:         9
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - i_unreached
      functionUses:    2
      BranchProfiles:
        - Branch String:   'net.c:167,6'
          Branch Sides:
            - BranchSide:      'net.c:168,30'
              BranchSideFuncs:
                - htons
            - BranchSide:      'net.c:169,11'
              BranchSideFuncs:
                - i_unreached
                - htons
        - Branch String:   'net.c:169,11'
          Branch Sides:
            - BranchSide:      'net.c:170,28'
              BranchSideFuncs:
                - htons
            - BranchSide:      'net.c:172,3'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'net.c:168,24'
          Dst:             htons
        - Src:             'net.c:170,22'
          Dst:             htons
        - Src:             'net.c:172,3'
          Dst:             i_unreached
    - functionName:    connect
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getnameinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    net_handle_gai_error
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - function
        - gai_errno
        - log
      BBCount:         21
      ICount:          94
      EdgeCount:       22
      CyclomaticComplexity: 3
      functionsReached:
        - gai_strerror
        - i_error
        - i_fatal_status
      functionUses:    4
      BranchProfiles:
        - Branch String:   'net.c:55,6'
          Branch Sides:
            - BranchSide:      'net.c:56,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:57,10'
              BranchSideFuncs:
                - i_error
                - gai_strerror
                - i_fatal_status
                - gai_strerror
                - i_error
        - Branch String:   'net.c:57,2'
          Branch Sides:
            - BranchSide:      'net.c:67,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:67,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:67,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:67,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:70,11'
              BranchSideFuncs:
                - gai_strerror
                - i_fatal_status
            - BranchSide:      'net.c:72,7'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:76,7'
              BranchSideFuncs:
                - gai_strerror
                - i_error
        - Branch String:   'net.c:72,7'
          Branch Sides:
            - BranchSide:      'net.c:73,31'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:74,3'
              BranchSideFuncs: []
        - Branch String:   'net.c:76,7'
          Branch Sides:
            - BranchSide:      'net.c:77,31'
              BranchSideFuncs:
                - gai_strerror
                - i_error
            - BranchSide:      'net.c:79,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:70,21'
          Dst:             gai_strerror
        - Src:             'net.c:69,3'
          Dst:             i_fatal_status
        - Src:             'net.c:73,4'
          Dst:             i_error
        - Src:             'net.c:78,5'
          Dst:             gai_strerror
        - Src:             'net.c:77,4'
          Dst:             i_error
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    5
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    net_is_in_network
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1263
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ip
        - net_ip
        - bits
      BBCount:         44
      ICount:          310
      EdgeCount:       57
      CyclomaticComplexity: 15
      functionsReached:
        - htonl
        - i_panic
        - net_ipv6_mapped_ipv4_convert
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:1212,6'
          Branch Sides:
            - BranchSide:      'net.c:1214,6'
              BranchSideFuncs:
                - htonl
                - htonl
                - i_panic
            - BranchSide:      'net.c:1217,6'
              BranchSideFuncs:
                - htonl
                - htonl
                - i_panic
        - Branch String:   'net.c:1217,22'
          Branch Sides:
            - BranchSide:      'net.c:1217,25'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1220,3'
              BranchSideFuncs: []
        - Branch String:   'net.c:1217,6'
          Branch Sides:
            - BranchSide:      'net.c:1220,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1222,6'
              BranchSideFuncs:
                - htonl
                - htonl
                - i_panic
        - Branch String:   'net.c:1222,6'
          Branch Sides:
            - BranchSide:      'net.c:1224,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1226,2'
              BranchSideFuncs:
                - htonl
                - htonl
                - i_panic
        - Branch String:   'net.c:1226,2'
          Branch Sides:
            - BranchSide:      'net.c:1226,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:1228,6'
              BranchSideFuncs:
                - htonl
                - htonl
        - Branch String:   'net.c:1228,6'
          Branch Sides:
            - BranchSide:      'net.c:1229,10'
              BranchSideFuncs:
                - htonl
                - htonl
            - BranchSide:      'net.c:1232,24'
              BranchSideFuncs:
                - htonl
                - htonl
        - Branch String:   'net.c:1243,2'
          Branch Sides:
            - BranchSide:      'net.c:1244,7'
              BranchSideFuncs:
                - htonl
                - htonl
            - BranchSide:      'net.c:1247,13'
              BranchSideFuncs:
                - htonl
                - htonl
        - Branch String:   'net.c:1244,7'
          Branch Sides:
            - BranchSide:      'net.c:1245,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1246,2'
              BranchSideFuncs:
                - htonl
                - htonl
        - Branch String:   'net.c:1251,2'
          Branch Sides:
            - BranchSide:      'net.c:1252,8'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1257,10'
              BranchSideFuncs: []
        - Branch String:   'net.c:1252,7'
          Branch Sides:
            - BranchSide:      'net.c:1253,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1254,2'
              BranchSideFuncs: []
        - Branch String:   'net.c:1258,2'
          Branch Sides:
            - BranchSide:      'net.c:1259,8'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1262,2'
              BranchSideFuncs: []
        - Branch String:   'net.c:1259,7'
          Branch Sides:
            - BranchSide:      'net.c:1260,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1261,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:1212,6'
          Dst:             net_ipv6_mapped_ipv4_convert
        - Src:             'net.c:1226,2'
          Dst:             i_panic
        - Src:             'net.c:1247,7'
          Dst:             htonl
        - Src:             'net.c:1248,7'
          Dst:             htonl
    - functionName:    net_ipv6_mapped_ipv4_convert
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1093
      functionLinenumberEnd: 1106
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - src
        - dest
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - i_memcpy
        - memcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:1097,6'
          Branch Sides:
            - BranchSide:      'net.c:1098,3'
              BranchSideFuncs:
                - memcmp
                - i_memcpy.8555
            - BranchSide:      'net.c:1099,13'
              BranchSideFuncs:
                - memcmp
                - i_memcpy.8555
        - Branch String:   'net.c:1099,6'
          Branch Sides:
            - BranchSide:      'net.c:1100,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1102,2'
              BranchSideFuncs:
                - i_memcpy.8555
      Callsites:
        - Src:             'net.c:1099,6'
          Dst:             memcmp
        - Src:             'net.c:1104,2'
          Dst:             i_memcpy
    - functionName:    net_parse_range
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1180
      functionLinenumberEnd: 1202
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - network
        - ip_r
        - bits_r
      BBCount:         17
      ICount:          106
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - net_addr2ip
        - str_to_uint
        - strchr
        - t_strdup_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:1185,6'
          Branch Sides:
            - BranchSide:      'net.c:1186,28'
              BranchSideFuncs:
                - t_strdup_until
                - net_addr2ip
                - str_to_uint
            - BranchSide:      'net.c:1188,18'
              BranchSideFuncs:
                - net_addr2ip
                - str_to_uint
        - Branch String:   'net.c:1188,6'
          Branch Sides:
            - BranchSide:      'net.c:1189,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1191,13'
              BranchSideFuncs:
                - str_to_uint
        - Branch String:   'net.c:1192,6'
          Branch Sides:
            - BranchSide:      'net.c:1194,10'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1197,19'
              BranchSideFuncs:
                - str_to_uint
        - Branch String:   'net.c:1197,33'
          Branch Sides:
            - BranchSide:      'net.c:1197,36'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1198,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:1197,7'
          Branch Sides:
            - BranchSide:      'net.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1198,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:1184,6'
          Dst:             strchr
        - Src:             'net.c:1186,13'
          Dst:             t_strdup_until
        - Src:             'net.c:1188,6'
          Dst:             net_addr2ip
        - Src:             'net.c:1197,7'
          Dst:             str_to_uint
    - functionName:    net_addr2ip
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 1018
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - addr
        - ip_r
      BBCount:         31
      ICount:          173
      EdgeCount:       37
      CyclomaticComplexity: 8
      functionsReached:
        - freeaddrinfo
        - getaddrinfo
        - i_panic
        - net_addr2ip_inet4_fast
        - net_handle_gai_error
        - sin_get_ip
        - strchr
        - strlen
        - t_pop
        - t_push
        - t_strndup
      functionUses:    5
      BranchProfiles:
        - Branch String:   'net.c:990,6'
          Branch Sides:
            - BranchSide:      'net.c:991,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:993,2'
              BranchSideFuncs:
                - t_push
                - strchr
                - getaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - sin_get_ip
                - i_panic
                - strlen
                - t_strndup
        - Branch String:   'net.c:994,7'
          Branch Sides:
            - BranchSide:      'net.c:995,8'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - sin_get_ip
                - i_panic
                - strlen
                - t_strndup
            - BranchSide:      'net.c:1003,20'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - sin_get_ip
                - i_panic
        - Branch String:   'net.c:995,8'
          Branch Sides:
            - BranchSide:      'net.c:997,25'
              BranchSideFuncs:
                - strlen
                - getaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - sin_get_ip
                - i_panic
                - t_strndup
            - BranchSide:      'net.c:1001,3'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - sin_get_ip
                - i_panic
        - Branch String:   'net.c:998,9'
          Branch Sides:
            - BranchSide:      'net.c:999,23'
              BranchSideFuncs:
                - t_strndup
                - getaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - sin_get_ip
                - i_panic
            - BranchSide:      'net.c:1000,4'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - sin_get_ip
                - i_panic
        - Branch String:   'net.c:1007,7'
          Branch Sides:
            - BranchSide:      'net.c:1008,4'
              BranchSideFuncs:
                - sin_get_ip
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
                - i_panic
            - BranchSide:      'net.c:1013,7'
              BranchSideFuncs:
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
        - Branch String:   'net.c:1008,4'
          Branch Sides:
            - BranchSide:      'net.c:1008,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:1010,29'
              BranchSideFuncs:
                - sin_get_ip
                - net_handle_gai_error
                - t_pop
                - i_panic
                - freeaddrinfo
        - Branch String:   'net.c:1013,7'
          Branch Sides:
            - BranchSide:      'net.c:1014,17'
              BranchSideFuncs:
                - freeaddrinfo
                - net_handle_gai_error
                - t_pop
                - i_panic
            - BranchSide:      'net.c:1015,45'
              BranchSideFuncs:
                - net_handle_gai_error
                - t_pop
                - i_panic
        - Branch String:   'net.c:1016,4'
          Branch Sides:
            - BranchSide:      'net.c:1016,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:1016,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:990,6'
          Dst:             net_addr2ip_inet4_fast
        - Src:             'net.c:993,2'
          Dst:             t_push
        - Src:             'net.c:994,7'
          Dst:             strchr
        - Src:             'net.c:997,18'
          Dst:             strlen
        - Src:             'net.c:999,13'
          Dst:             t_strndup
        - Src:             'net.c:1007,14'
          Dst:             getaddrinfo
        - Src:             'net.c:1008,4'
          Dst:             i_panic
        - Src:             'net.c:1011,4'
          Dst:             sin_get_ip
        - Src:             'net.c:1014,4'
          Dst:             freeaddrinfo
        - Src:             'net.c:1015,9'
          Dst:             net_handle_gai_error
        - Src:             'net.c:1016,4'
          Dst:             t_pop
        - Src:             'net.c:1016,4'
          Dst:             i_panic
    - functionName:    net_addr2ip_inet4_fast
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - addr
        - ip
      BBCount:         18
      ICount:          111
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - str_parse_uint
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:962,6'
          Branch Sides:
            - BranchSide:      'net.c:963,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:966,4'
              BranchSideFuncs:
                - str_parse_uint
        - Branch String:   'net.c:968,7'
          Branch Sides:
            - BranchSide:      'net.c:969,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:970,14'
              BranchSideFuncs:
                - str_parse_uint
        - Branch String:   'net.c:971,7'
          Branch Sides:
            - BranchSide:      'net.c:972,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:973,4'
              BranchSideFuncs:
                - str_parse_uint
        - Branch String:   'net.c:974,7'
          Branch Sides:
            - BranchSide:      'net.c:975,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:976,7'
              BranchSideFuncs:
                - str_parse_uint
        - Branch String:   'net.c:977,7'
          Branch Sides:
            - BranchSide:      'net.c:967,2'
              BranchSideFuncs: []
            - BranchSide:      'net.c:978,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:980,6'
          Branch Sides:
            - BranchSide:      'net.c:981,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:982,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:962,6'
          Dst:             str_parse_uint
        - Src:             'net.c:977,7'
          Dst:             str_parse_uint
    - functionName:    sin_get_ip
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - so
        - ip
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - i_memcpy
      functionUses:    5
      BranchProfiles:
        - Branch String:   'net.c:156,6'
          Branch Sides:
            - BranchSide:      'net.c:157,3'
              BranchSideFuncs:
                - i_memcpy.8555
            - BranchSide:      'net.c:159,13'
              BranchSideFuncs:
                - i_memcpy.8555
        - Branch String:   'net.c:159,13'
          Branch Sides:
            - BranchSide:      'net.c:160,3'
              BranchSideFuncs:
                - i_memcpy.8555
            - BranchSide:      'net.c:162,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:157,3'
          Dst:             i_memcpy
        - Src:             'net.c:160,3'
          Dst:             i_memcpy
    - functionName:    net_getservbyport
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - port
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getservbyport
        - htons
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:1175,9'
          Branch Sides:
            - BranchSide:      'net.c:1175,9'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1175,32'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:1174,24'
          Dst:             htons
        - Src:             'net.c:1174,10'
          Dst:             getservbyport
    - functionName:    getservbyport
      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:    net_hosterror_notfound
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1162
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - error
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:1164,21'
          Branch Sides:
            - BranchSide:      'net.c:1164,25'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1164,21'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    net_get_hosterror_type
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1131
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - error
      BBCount:         8
      ICount:          53
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:1152,2'
          Branch Sides:
            - BranchSide:      'net.c:1153,17'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1158,2'
              BranchSideFuncs: []
        - Branch String:   'net.c:1153,7'
          Branch Sides:
            - BranchSide:      'net.c:1154,21'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1155,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    net_gethosterror
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1124
      functionLinenumberEnd: 1127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - error
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - gai_strerror
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:1125,2'
          Branch Sides:
            - BranchSide:      'net.c:1125,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:1125,2'
              BranchSideFuncs:
                - gai_strerror
      Callsites:
        - Src:             'net.c:1125,2'
          Dst:             i_panic
        - Src:             'net.c:1127,9'
          Dst:             gai_strerror
    - functionName:    net_geterror
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1109
      functionLinenumberEnd: 1121
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - fd
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - getsockopt
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:1113,6'
          Branch Sides:
            - BranchSide:      'net.c:1117,10'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:1120,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:1113,6'
          Dst:             getsockopt
        - Src:             'net.c:1117,10'
          Dst:             __errno_location
    - functionName:    getsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    net_ipport2str
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1083
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ip
        - port
      BBCount:         10
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - net_ip2addr
        - t_strdup_printf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:1084,2'
          Branch Sides:
            - BranchSide:      'net.c:1084,2'
              BranchSideFuncs:
                - net_ip2addr
                - t_strdup_printf
                - i_panic
            - BranchSide:      'net.c:1084,2'
              BranchSideFuncs:
                - net_ip2addr
                - t_strdup_printf
                - i_panic
        - Branch String:   'net.c:1084,2'
          Branch Sides:
            - BranchSide:      'net.c:1084,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:1084,2'
              BranchSideFuncs:
                - net_ip2addr
                - t_strdup_printf
      Callsites:
        - Src:             'net.c:1084,2'
          Dst:             i_panic
        - Src:             'net.c:1087,42'
          Dst:             net_ip2addr
        - Src:             'net.c:1086,9'
          Dst:             t_strdup_printf
    - functionName:    net_str2hostport
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1048
      functionLinenumberEnd: 1080
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - default_port
        - host_r
        - port_r
      BBCount:         20
      ICount:          147
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - net_str2port
        - strchr
        - t_strdup_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:1052,6'
          Branch Sides:
            - BranchSide:      'net.c:1054,14'
              BranchSideFuncs:
                - strchr
                - t_strdup_until
                - net_str2port
            - BranchSide:      'net.c:1059,14'
              BranchSideFuncs:
                - strchr
                - strchr
                - t_strdup_until
                - net_str2port
        - Branch String:   'net.c:1055,7'
          Branch Sides:
            - BranchSide:      'net.c:1056,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1057,25'
              BranchSideFuncs:
                - t_strdup_until
                - net_str2port
        - Branch String:   'net.c:1060,17'
          Branch Sides:
            - BranchSide:      'net.c:1060,27'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1062,14'
              BranchSideFuncs: []
        - Branch String:   'net.c:1060,7'
          Branch Sides:
            - BranchSide:      'net.c:1062,14'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1066,25'
              BranchSideFuncs:
                - t_strdup_until
                - net_str2port
        - Branch String:   'net.c:1068,6'
          Branch Sides:
            - BranchSide:      'net.c:1069,13'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1073,6'
              BranchSideFuncs:
                - net_str2port
        - Branch String:   'net.c:1073,6'
          Branch Sides:
            - BranchSide:      'net.c:1074,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1075,19'
              BranchSideFuncs:
                - net_str2port
        - Branch String:   'net.c:1075,6'
          Branch Sides:
            - BranchSide:      'net.c:1076,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1077,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:1054,7'
          Dst:             strchr
        - Src:             'net.c:1057,10'
          Dst:             t_strdup_until
        - Src:             'net.c:1059,7'
          Dst:             strchr
        - Src:             'net.c:1060,20'
          Dst:             strchr
        - Src:             'net.c:1066,10'
          Dst:             t_strdup_until
        - Src:             'net.c:1075,6'
          Dst:             net_str2port
    - functionName:    net_str2port
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1021
      functionLinenumberEnd: 1031
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - port_r
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_uintmax
      functionUses:    2
      BranchProfiles:
        - Branch String:   'net.c:1024,6'
          Branch Sides:
            - BranchSide:      'net.c:1025,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1027,6'
              BranchSideFuncs: []
        - Branch String:   'net.c:1027,13'
          Branch Sides:
            - BranchSide:      'net.c:1027,16'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1028,3'
              BranchSideFuncs: []
        - Branch String:   'net.c:1027,6'
          Branch Sides:
            - BranchSide:      'net.c:1028,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1029,23'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:1024,6'
          Dst:             str_to_uintmax
    - functionName:    net_str2port_zero
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - port_r
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:1037,6'
          Branch Sides:
            - BranchSide:      'net.c:1038,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1040,6'
              BranchSideFuncs: []
        - Branch String:   'net.c:1040,6'
          Branch Sides:
            - BranchSide:      'net.c:1041,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:1042,23'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:1037,6'
          Dst:             str_to_uintmax
    - functionName:    net_getunixcred
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 806
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - cred_r
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getsockopt
        - i_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:817,6'
          Branch Sides:
            - BranchSide:      'net.c:818,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:821,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:817,6'
          Dst:             getsockopt
        - Src:             'net.c:818,3'
          Dst:             i_error
    - functionName:    net_getunixname
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 803
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - name_r
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - getsockname
        - t_strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:795,6'
          Branch Sides:
            - BranchSide:      'net.c:796,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:797,12'
              BranchSideFuncs:
                - t_strdup
                - __errno_location
        - Branch String:   'net.c:797,6'
          Branch Sides:
            - BranchSide:      'net.c:798,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:801,27'
              BranchSideFuncs:
                - t_strdup
      Callsites:
        - Src:             'net.c:795,6'
          Dst:             getsockname
        - Src:             'net.c:798,3'
          Dst:             __errno_location
        - Src:             'net.c:801,12'
          Dst:             t_strdup
    - functionName:    net_getpeername
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - addr
        - port
      BBCount:         25
      ICount:          122
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - getpeername
        - i_panic
        - sin_get_ip
        - sin_get_port
      functionUses:    2
      BranchProfiles:
        - Branch String:   'net.c:772,2'
          Branch Sides:
            - BranchSide:      'net.c:772,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:774,2'
              BranchSideFuncs:
                - getpeername
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:776,6'
          Branch Sides:
            - BranchSide:      'net.c:777,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:778,13'
              BranchSideFuncs:
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:778,6'
          Branch Sides:
            - BranchSide:      'net.c:779,7'
              BranchSideFuncs: []
            - BranchSide:      'net.c:783,7'
              BranchSideFuncs:
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:779,7'
          Branch Sides:
            - BranchSide:      'net.c:780,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:781,7'
              BranchSideFuncs: []
        - Branch String:   'net.c:781,7'
          Branch Sides:
            - BranchSide:      'net.c:781,22'
              BranchSideFuncs: []
            - BranchSide:      'net.c:782,2'
              BranchSideFuncs: []
        - Branch String:   'net.c:783,7'
          Branch Sides:
            - BranchSide:      'net.c:783,37'
              BranchSideFuncs:
                - sin_get_ip
                - sin_get_port
            - BranchSide:      'net.c:784,7'
              BranchSideFuncs:
                - sin_get_port
      Callsites:
        - Src:             'net.c:772,2'
          Dst:             i_panic
        - Src:             'net.c:776,6'
          Dst:             getpeername
        - Src:             'net.c:783,21'
          Dst:             sin_get_ip
        - Src:             'net.c:784,29'
          Dst:             sin_get_port
    - functionName:    getpeername
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sin_get_port
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - so
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
      functionUses:    4
      BranchProfiles:
        - Branch String:   'net.c:177,6'
          Branch Sides:
            - BranchSide:      'net.c:178,16'
              BranchSideFuncs:
                - ntohs
            - BranchSide:      'net.c:179,6'
              BranchSideFuncs:
                - ntohs
        - Branch String:   'net.c:179,6'
          Branch Sides:
            - BranchSide:      'net.c:180,16'
              BranchSideFuncs:
                - ntohs
            - BranchSide:      'net.c:182,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:178,10'
          Dst:             ntohs
        - Src:             'net.c:180,10'
          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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    net_getsockname
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 746
      functionLinenumberEnd: 765
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - addr
        - port
      BBCount:         25
      ICount:          122
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - getsockname
        - i_panic
        - sin_get_ip
        - sin_get_port
      functionUses:    2
      BranchProfiles:
        - Branch String:   'net.c:750,2'
          Branch Sides:
            - BranchSide:      'net.c:750,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:752,2'
              BranchSideFuncs:
                - getsockname
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:754,6'
          Branch Sides:
            - BranchSide:      'net.c:755,3'
              BranchSideFuncs: []
            - BranchSide:      'net.c:756,13'
              BranchSideFuncs:
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:756,6'
          Branch Sides:
            - BranchSide:      'net.c:757,7'
              BranchSideFuncs: []
            - BranchSide:      'net.c:761,7'
              BranchSideFuncs:
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:757,7'
          Branch Sides:
            - BranchSide:      'net.c:758,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:759,7'
              BranchSideFuncs: []
        - Branch String:   'net.c:759,7'
          Branch Sides:
            - BranchSide:      'net.c:759,22'
              BranchSideFuncs: []
            - BranchSide:      'net.c:760,2'
              BranchSideFuncs: []
        - Branch String:   'net.c:761,7'
          Branch Sides:
            - BranchSide:      'net.c:761,37'
              BranchSideFuncs:
                - sin_get_ip
                - sin_get_port
            - BranchSide:      'net.c:762,7'
              BranchSideFuncs:
                - sin_get_port
      Callsites:
        - Src:             'net.c:750,2'
          Dst:             i_panic
        - Src:             'net.c:754,6'
          Dst:             getsockname
        - Src:             'net.c:761,21'
          Dst:             sin_get_ip
        - Src:             'net.c:762,29'
          Dst:             sin_get_port
    - functionName:    net_gethostbyaddr
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
        - name_r
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getnameinfo
        - net_handle_gai_error
        - sin_set_ip
        - t_strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:738,6'
          Branch Sides:
            - BranchSide:      'net.c:739,10'
              BranchSideFuncs: []
            - BranchSide:      'net.c:741,21'
              BranchSideFuncs:
                - t_strdup
      Callsites:
        - Src:             'net.c:735,2'
          Dst:             sin_set_ip
        - Src:             'net.c:736,8'
          Dst:             getnameinfo
        - Src:             'net.c:738,6'
          Dst:             net_handle_gai_error
        - Src:             'net.c:741,12'
          Dst:             t_strdup
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    net_gethostbyname
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - addr
        - ips
        - ips_count
      BBCount:         27
      ICount:          192
      EdgeCount:       32
      CyclomaticComplexity: 7
      functionsReached:
        - freeaddrinfo
        - getaddrinfo
        - i_panic
        - malloc_multiply_check
        - net_addr2ip
        - net_handle_gai_error
        - sin_get_ip
        - t_malloc0
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:689,21'
          Branch Sides:
            - BranchSide:      'net.c:689,36'
              BranchSideFuncs:
                - net_addr2ip
                - getaddrinfo
                - net_handle_gai_error
                - malloc_multiply_check.8595
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
                - i_panic
                - malloc_multiply_check.8595
                - t_malloc0
            - BranchSide:      'net.c:696,2'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - malloc_multiply_check.8595
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
                - i_panic
        - Branch String:   'net.c:689,6'
          Branch Sides:
            - BranchSide:      'net.c:690,4'
              BranchSideFuncs:
                - malloc_multiply_check.8595
                - t_malloc0
            - BranchSide:      'net.c:696,2'
              BranchSideFuncs:
                - getaddrinfo
                - net_handle_gai_error
                - malloc_multiply_check.8595
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
                - i_panic
        - Branch String:   'net.c:702,6'
          Branch Sides:
            - BranchSide:      'net.c:703,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:708,11'
              BranchSideFuncs:
                - malloc_multiply_check.8595
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
        - Branch String:   'net.c:703,3'
          Branch Sides:
            - BranchSide:      'net.c:703,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:704,10'
              BranchSideFuncs: []
        - Branch String:   'net.c:709,2'
          Branch Sides:
            - BranchSide:      'net.c:710,8'
              BranchSideFuncs:
                - malloc_multiply_check.8595
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
            - BranchSide:      'net.c:711,2'
              BranchSideFuncs:
                - malloc_multiply_check.8595
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
                - i_panic
        - Branch String:   'net.c:711,2'
          Branch Sides:
            - BranchSide:      'net.c:711,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:713,15'
              BranchSideFuncs:
                - malloc_multiply_check.8595
                - t_malloc0
                - freeaddrinfo
                - sin_get_ip
        - Branch String:   'net.c:717,2'
          Branch Sides:
            - BranchSide:      'net.c:718,33'
              BranchSideFuncs:
                - sin_get_ip
                - freeaddrinfo
            - BranchSide:      'net.c:722,15'
              BranchSideFuncs:
                - freeaddrinfo
      Callsites:
        - Src:             'net.c:689,24'
          Dst:             net_addr2ip
        - Src:             'net.c:691,10'
          Dst:             malloc_multiply_check
        - Src:             'net.c:691,10'
          Dst:             t_malloc0
        - Src:             'net.c:701,15'
          Dst:             getaddrinfo
        - Src:             'net.c:702,6'
          Dst:             net_handle_gai_error
        - Src:             'net.c:703,3'
          Dst:             i_panic
        - Src:             'net.c:711,2'
          Dst:             i_panic
        - Src:             'net.c:714,9'
          Dst:             malloc_multiply_check
        - Src:             'net.c:714,9'
          Dst:             t_malloc0
        - Src:             'net.c:720,3'
          Dst:             sin_get_ip
        - Src:             'net.c:722,2'
          Dst:             freeaddrinfo
    - functionName:    net_receive
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - buf
        - len
      BBCount:         27
      ICount:          134
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - i_panic
        - read
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:652,2'
          Branch Sides:
            - BranchSide:      'net.c:652,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:653,2'
              BranchSideFuncs:
                - read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - i_panic
        - Branch String:   'net.c:653,2'
          Branch Sides:
            - BranchSide:      'net.c:653,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:655,13'
              BranchSideFuncs:
                - read
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
        - Branch String:   'net.c:656,6'
          Branch Sides:
            - BranchSide:      'net.c:658,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:662,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
        - Branch String:   'net.c:662,6'
          Branch Sides:
            - BranchSide:      'net.c:663,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
            - BranchSide:      'net.c:672,9'
              BranchSideFuncs: []
        - Branch String:   'net.c:663,22'
          Branch Sides:
            - BranchSide:      'net.c:663,25'
              BranchSideFuncs: []
            - BranchSide:      'net.c:664,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:663,7'
          Branch Sides:
            - BranchSide:      'net.c:664,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:666,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
        - Branch String:   'net.c:666,27'
          Branch Sides:
            - BranchSide:      'net.c:666,30'
              BranchSideFuncs: []
            - BranchSide:      'net.c:668,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:666,7'
          Branch Sides:
            - BranchSide:      'net.c:668,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:670,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:652,2'
          Dst:             i_panic
        - Src:             'net.c:653,2'
          Dst:             i_panic
        - Src:             'net.c:655,8'
          Dst:             read
        - Src:             'net.c:658,3'
          Dst:             __errno_location
        - Src:             'net.c:663,7'
          Dst:             __errno_location
        - Src:             'net.c:663,25'
          Dst:             __errno_location
        - Src:             'net.c:666,7'
          Dst:             __errno_location
        - Src:             'net.c:666,30'
          Dst:             __errno_location
    - functionName:    net_accept
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fd
        - addr_r
        - port_r
      BBCount:         30
      ICount:          147
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - accept
        - i_panic
        - sin_get_ip
        - sin_get_port
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:625,2'
          Branch Sides:
            - BranchSide:      'net.c:625,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'net.c:627,2'
              BranchSideFuncs:
                - accept
                - sin_get_port
                - sin_get_ip
                - __errno_location
                - __errno_location
        - Branch String:   'net.c:631,6'
          Branch Sides:
            - BranchSide:      'net.c:632,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
            - BranchSide:      'net.c:637,13'
              BranchSideFuncs:
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:632,23'
          Branch Sides:
            - BranchSide:      'net.c:632,26'
              BranchSideFuncs: []
            - BranchSide:      'net.c:633,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:632,7'
          Branch Sides:
            - BranchSide:      'net.c:633,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:635,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:637,6'
          Branch Sides:
            - BranchSide:      'net.c:638,7'
              BranchSideFuncs: []
            - BranchSide:      'net.c:642,7'
              BranchSideFuncs:
                - sin_get_port
                - sin_get_ip
        - Branch String:   'net.c:638,7'
          Branch Sides:
            - BranchSide:      'net.c:639,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:640,7'
              BranchSideFuncs: []
        - Branch String:   'net.c:640,7'
          Branch Sides:
            - BranchSide:      'net.c:640,24'
              BranchSideFuncs: []
            - BranchSide:      'net.c:641,2'
              BranchSideFuncs: []
        - Branch String:   'net.c:642,7'
          Branch Sides:
            - BranchSide:      'net.c:642,39'
              BranchSideFuncs:
                - sin_get_ip
                - sin_get_port
            - BranchSide:      'net.c:643,7'
              BranchSideFuncs:
                - sin_get_port
      Callsites:
        - Src:             'net.c:625,2'
          Dst:             i_panic
        - Src:             'net.c:629,8'
          Dst:             accept
        - Src:             'net.c:632,7'
          Dst:             __errno_location
        - Src:             'net.c:632,26'
          Dst:             __errno_location
        - Src:             'net.c:642,23'
          Dst:             sin_get_ip
        - Src:             'net.c:643,33'
          Dst:             sin_get_port
    - functionName:    accept
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    net_listen_unix_unlink_stale
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 617
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - backlog
      BBCount:         19
      ICount:          99
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - i_close_fd_path
        - i_unlink_if_exists
        - net_connect_unix
        - net_listen_unix
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:598,2'
          Branch Sides:
            - BranchSide:      'net.c:599,7'
              BranchSideFuncs:
                - __errno_location
                - net_connect_unix
                - __errno_location
                - i_unlink_if_exists
                - net_listen_unix
                - __errno_location
                - i_close_fd_path
                - __errno_location
            - BranchSide:      'net.c:616,9'
              BranchSideFuncs: []
        - Branch String:   'net.c:599,27'
          Branch Sides:
            - BranchSide:      'net.c:599,30'
              BranchSideFuncs: []
            - BranchSide:      'net.c:600,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:599,7'
          Branch Sides:
            - BranchSide:      'net.c:600,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:603,25'
              BranchSideFuncs:
                - net_connect_unix
                - __errno_location
                - i_unlink_if_exists
                - net_listen_unix
                - __errno_location
                - __errno_location
                - i_close_fd_path
                - __errno_location
        - Branch String:   'net.c:604,16'
          Branch Sides:
            - BranchSide:      'net.c:604,19'
              BranchSideFuncs:
                - i_close_fd_path
                - __errno_location
            - BranchSide:      'net.c:605,4'
              BranchSideFuncs:
                - i_close_fd_path
                - __errno_location
        - Branch String:   'net.c:604,7'
          Branch Sides:
            - BranchSide:      'net.c:605,4'
              BranchSideFuncs:
                - i_close_fd_path
                - __errno_location
            - BranchSide:      'net.c:611,7'
              BranchSideFuncs:
                - i_unlink_if_exists
                - net_listen_unix
                - __errno_location
                - net_connect_unix
                - __errno_location
                - i_close_fd_path
                - __errno_location
                - __errno_location
        - Branch String:   'net.c:611,7'
          Branch Sides:
            - BranchSide:      'net.c:598,2'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:612,4'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'net.c:598,15'
          Dst:             net_listen_unix
        - Src:             'net.c:599,7'
          Dst:             __errno_location
        - Src:             'net.c:603,8'
          Dst:             net_connect_unix
        - Src:             'net.c:604,19'
          Dst:             __errno_location
        - Src:             'net.c:605,4'
          Dst:             i_close_fd_path
        - Src:             'net.c:606,4'
          Dst:             __errno_location
        - Src:             'net.c:611,7'
          Dst:             i_unlink_if_exists
        - Src:             'net.c:612,4'
          Dst:             __errno_location
    - functionName:    net_listen_unix
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - backlog
      BBCount:         19
      ICount:          107
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - bind
        - i_close_fd_path
        - i_error
        - i_strocpy
        - listen
        - socket
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:549,6'
          Branch Sides:
            - BranchSide:      'net.c:552,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:560,7'
              BranchSideFuncs:
                - socket
                - bind
                - listen
                - __errno_location
                - i_close_fd_path
                - i_error
                - __errno_location
                - i_error
                - i_error
        - Branch String:   'net.c:561,6'
          Branch Sides:
            - BranchSide:      'net.c:562,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:577,11'
              BranchSideFuncs:
                - bind
                - listen
                - __errno_location
                - i_close_fd_path
                - i_error
                - __errno_location
                - i_error
        - Branch String:   'net.c:577,6'
          Branch Sides:
            - BranchSide:      'net.c:578,7'
              BranchSideFuncs:
                - __errno_location
                - i_close_fd_path
                - i_error
            - BranchSide:      'net.c:582,14'
              BranchSideFuncs:
                - listen
                - __errno_location
                - i_close_fd_path
                - i_error
        - Branch String:   'net.c:578,7'
          Branch Sides:
            - BranchSide:      'net.c:579,35'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:580,2'
              BranchSideFuncs:
                - i_close_fd_path
        - Branch String:   'net.c:582,7'
          Branch Sides:
            - BranchSide:      'net.c:583,11'
              BranchSideFuncs: []
            - BranchSide:      'net.c:585,7'
              BranchSideFuncs:
                - __errno_location
                - i_close_fd_path
                - i_error
      Callsites:
        - Src:             'net.c:549,6'
          Dst:             i_strocpy
        - Src:             'net.c:552,3'
          Dst:             __errno_location
        - Src:             'net.c:560,7'
          Dst:             socket
        - Src:             'net.c:562,3'
          Dst:             i_error
        - Src:             'net.c:577,6'
          Dst:             bind
        - Src:             'net.c:578,7'
          Dst:             __errno_location
        - Src:             'net.c:579,4'
          Dst:             i_error
        - Src:             'net.c:582,7'
          Dst:             listen
        - Src:             'net.c:585,7'
          Dst:             __errno_location
        - Src:             'net.c:586,4'
          Dst:             i_error
        - Src:             'net.c:589,2'
          Dst:             i_close_fd_path
    - functionName:    net_connect_unix
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
      BBCount:         13
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - connect
        - i_close_fd_path
        - i_error
        - i_strocpy
        - net_set_nonblock
        - socket
      functionUses:    3
      BranchProfiles:
        - Branch String:   'net.c:312,6'
          Branch Sides:
            - BranchSide:      'net.c:315,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:323,7'
              BranchSideFuncs:
                - socket
                - net_set_nonblock
                - connect
                - __errno_location
                - i_close_fd_path
                - i_error
        - Branch String:   'net.c:324,6'
          Branch Sides:
            - BranchSide:      'net.c:325,36'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:329,19'
              BranchSideFuncs:
                - net_set_nonblock
                - connect
                - __errno_location
                - i_close_fd_path
        - Branch String:   'net.c:333,14'
          Branch Sides:
            - BranchSide:      'net.c:333,17'
              BranchSideFuncs:
                - __errno_location
                - i_close_fd_path
            - BranchSide:      'net.c:348,9'
              BranchSideFuncs: []
        - Branch String:   'net.c:333,6'
          Branch Sides:
            - BranchSide:      'net.c:334,3'
              BranchSideFuncs:
                - i_close_fd_path
            - BranchSide:      'net.c:348,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:312,6'
          Dst:             i_strocpy
        - Src:             'net.c:315,3'
          Dst:             __errno_location
        - Src:             'net.c:323,7'
          Dst:             socket
        - Src:             'net.c:325,3'
          Dst:             i_error
        - Src:             'net.c:329,2'
          Dst:             net_set_nonblock
        - Src:             'net.c:332,8'
          Dst:             connect
        - Src:             'net.c:333,17'
          Dst:             __errno_location
        - Src:             'net.c:334,3'
          Dst:             i_close_fd_path
    - functionName:    listen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    net_listen_full
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 537
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - my_ip
        - port
        - flags
        - backlog
      BBCount:         42
      ICount:          257
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - __errno_location
        - bind
        - getsockname
        - i_close_fd_path
        - i_error
        - listen
        - net_ip2addr
        - setsockopt
        - sin_get_port
        - sin_set_ip
        - sin_set_port
        - socket
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:478,15'
          Branch Sides:
            - BranchSide:      'net.c:478,18'
              BranchSideFuncs:
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
                - __errno_location
                - __errno_location
                - socket
            - BranchSide:      'net.c:486,6'
              BranchSideFuncs:
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
        - Branch String:   'net.c:478,32'
          Branch Sides:
            - BranchSide:      'net.c:479,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
                - socket
            - BranchSide:      'net.c:486,6'
              BranchSideFuncs:
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
        - Branch String:   'net.c:479,23'
          Branch Sides:
            - BranchSide:      'net.c:479,26'
              BranchSideFuncs:
                - socket
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
            - BranchSide:      'net.c:481,10'
              BranchSideFuncs:
                - socket
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
        - Branch String:   'net.c:478,6'
          Branch Sides:
            - BranchSide:      'net.c:481,10'
              BranchSideFuncs:
                - socket
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
            - BranchSide:      'net.c:486,6'
              BranchSideFuncs:
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
                - i_error
        - Branch String:   'net.c:486,6'
          Branch Sides:
            - BranchSide:      'net.c:487,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:492,19'
              BranchSideFuncs:
                - setsockopt
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
                - setsockopt
        - Branch String:   'net.c:495,6'
          Branch Sides:
            - BranchSide:      'net.c:497,18'
              BranchSideFuncs:
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
            - BranchSide:      'net.c:506,13'
              BranchSideFuncs:
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
        - Branch String:   'net.c:497,7'
          Branch Sides:
            - BranchSide:      'net.c:500,5'
              BranchSideFuncs:
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
            - BranchSide:      'net.c:501,2'
              BranchSideFuncs:
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
                - setsockopt
        - Branch String:   'net.c:506,6'
          Branch Sides:
            - BranchSide:      'net.c:507,7'
              BranchSideFuncs:
                - setsockopt
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
            - BranchSide:      'net.c:512,13'
              BranchSideFuncs:
                - bind
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
                - __errno_location
                - net_ip2addr
                - i_error
        - Branch String:   'net.c:513,6'
          Branch Sides:
            - BranchSide:      'net.c:514,7'
              BranchSideFuncs:
                - __errno_location
                - i_close_fd_path
                - net_ip2addr
                - i_error
            - BranchSide:      'net.c:520,9'
              BranchSideFuncs:
                - getsockname
                - i_close_fd_path
                - sin_get_port
                - listen
                - __errno_location
                - i_error
        - Branch String:   'net.c:514,7'
          Branch Sides:
            - BranchSide:      'net.c:516,5'
              BranchSideFuncs:
                - net_ip2addr
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:518,2'
              BranchSideFuncs:
                - i_close_fd_path
        - Branch String:   'net.c:516,5'
          Branch Sides:
            - BranchSide:      'net.c:516,47'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:516,38'
              BranchSideFuncs:
                - net_ip2addr
                - i_error
                - i_close_fd_path
        - Branch String:   'net.c:526,8'
          Branch Sides:
            - BranchSide:      'net.c:527,12'
              BranchSideFuncs: []
            - BranchSide:      'net.c:529,8'
              BranchSideFuncs:
                - __errno_location
                - i_close_fd_path
                - i_error
        - Branch String:   'net.c:529,8'
          Branch Sides:
            - BranchSide:      'net.c:530,5'
              BranchSideFuncs:
                - i_error
                - i_close_fd_path
            - BranchSide:      'net.c:531,3'
              BranchSideFuncs:
                - i_close_fd_path
      Callsites:
        - Src:             'net.c:473,2'
          Dst:             sin_set_ip
        - Src:             'net.c:474,2'
          Dst:             sin_set_port
        - Src:             'net.c:477,7'
          Dst:             socket
        - Src:             'net.c:479,7'
          Dst:             __errno_location
        - Src:             'net.c:479,26'
          Dst:             __errno_location
        - Src:             'net.c:484,8'
          Dst:             socket
        - Src:             'net.c:487,3'
          Dst:             i_error
        - Src:             'net.c:492,8'
          Dst:             setsockopt
        - Src:             'net.c:493,8'
          Dst:             setsockopt
        - Src:             'net.c:497,7'
          Dst:             setsockopt
        - Src:             'net.c:508,9'
          Dst:             setsockopt
        - Src:             'net.c:512,8'
          Dst:             bind
        - Src:             'net.c:514,7'
          Dst:             __errno_location
        - Src:             'net.c:516,26'
          Dst:             net_ip2addr
        - Src:             'net.c:515,4'
          Dst:             i_error
        - Src:             'net.c:521,9'
          Dst:             getsockname
        - Src:             'net.c:523,12'
          Dst:             sin_get_port
        - Src:             'net.c:526,8'
          Dst:             listen
        - Src:             'net.c:529,8'
          Dst:             __errno_location
        - Src:             'net.c:530,5'
          Dst:             i_error
        - Src:             'net.c:535,2'
          Dst:             i_close_fd_path
    - functionName:    net_listen
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - my_ip
        - port
        - backlog
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - net_listen_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:462,9'
          Dst:             net_listen_full
    - functionName:    net_set_recv_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - size
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - setsockopt
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:430,6'
          Branch Sides:
            - BranchSide:      'net.c:431,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:434,13'
              BranchSideFuncs:
                - setsockopt
      Callsites:
        - Src:             'net.c:431,3'
          Dst:             __errno_location
        - Src:             'net.c:435,9'
          Dst:             setsockopt
    - functionName:    net_set_send_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - size
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - setsockopt
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:418,6'
          Branch Sides:
            - BranchSide:      'net.c:419,3'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'net.c:422,13'
              BranchSideFuncs:
                - setsockopt
      Callsites:
        - Src:             'net.c:419,3'
          Dst:             __errno_location
        - Src:             'net.c:423,9'
          Dst:             setsockopt
    - functionName:    net_set_tcp_quickack
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - fd
        - quickack
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setsockopt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:407,9'
          Dst:             setsockopt
    - functionName:    net_set_tcp_nodelay
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - fd
        - nodelay
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setsockopt
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:399,9'
          Dst:             setsockopt
    - functionName:    net_set_cork
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - fd
        - cork
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setsockopt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:388,9'
          Dst:             setsockopt
    - functionName:    net_disconnect
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - fd
      BBCount:         8
      ICount:          37
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - close
        - i_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:374,20'
          Branch Sides:
            - BranchSide:      'net.c:374,23'
              BranchSideFuncs:
                - __errno_location
                - i_error
            - BranchSide:      'net.c:374,20'
              BranchSideFuncs: []
        - Branch String:   'net.c:374,6'
          Branch Sides:
            - BranchSide:      'net.c:374,6'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:375,3'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'net.c:374,6'
          Dst:             close
        - Src:             'net.c:374,23'
          Dst:             __errno_location
        - Src:             'net.c:375,3'
          Dst:             i_error
    - functionName:    timeval_diff_msecs
      functionSourceFile: '/src/dovecot/src/lib/./time-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - tv1
        - tv2
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeval_diff_usecs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './time-util.h:26,9'
          Dst:             timeval_diff_usecs
    - functionName:    i_rand_minmax
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - min_val
        - max_val
      BBCount:         7
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_rand_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:137,2'
          Branch Sides:
            - BranchSide:      './lib.h:137,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:137,2'
              BranchSideFuncs:
                - i_rand_limit
      Callsites:
        - Src:             './lib.h:137,2'
          Dst:             i_panic
        - Src:             './lib.h:138,19'
          Dst:             i_rand_limit
    - functionName:    net_connect_unix_with_retries
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - path
        - msecs
      BBCount:         16
      ICount:          78
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - i_gettimeofday
        - i_rand_minmax
        - net_connect_unix
        - timeval_diff_msecs
        - usleep
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:360,16'
          Branch Sides:
            - BranchSide:      'net.c:360,20'
              BranchSideFuncs: []
            - BranchSide:      'net.c:361,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:360,36'
          Branch Sides:
            - BranchSide:      'net.c:360,39'
              BranchSideFuncs:
                - __errno_location
                - i_rand_minmax
                - usleep
                - i_gettimeofday
                - timeval_diff_msecs.8614
                - net_connect_unix
                - __errno_location
            - BranchSide:      'net.c:364,10'
              BranchSideFuncs:
                - i_rand_minmax
                - usleep
                - i_gettimeofday
                - timeval_diff_msecs.8614
                - net_connect_unix
                - __errno_location
                - __errno_location
        - Branch String:   'net.c:360,7'
          Branch Sides:
            - BranchSide:      'net.c:361,4'
              BranchSideFuncs: []
            - BranchSide:      'net.c:364,10'
              BranchSideFuncs:
                - i_rand_minmax
                - usleep
                - i_gettimeofday
                - timeval_diff_msecs.8614
                - net_connect_unix
                - __errno_location
                - __errno_location
        - Branch String:   'net.c:366,2'
          Branch Sides:
            - BranchSide:      'net.c:359,25'
              BranchSideFuncs:
                - net_connect_unix
                - __errno_location
                - i_rand_minmax
                - usleep
                - i_gettimeofday
                - timeval_diff_msecs.8614
                - __errno_location
            - BranchSide:      'net.c:366,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:356,2'
          Dst:             i_gettimeofday
        - Src:             'net.c:359,8'
          Dst:             net_connect_unix
        - Src:             'net.c:360,20'
          Dst:             __errno_location
        - Src:             'net.c:360,39'
          Dst:             __errno_location
        - Src:             'net.c:364,10'
          Dst:             i_rand_minmax
        - Src:             'net.c:364,3'
          Dst:             usleep
        - Src:             'net.c:365,3'
          Dst:             i_gettimeofday
        - Src:             'net.c:366,11'
          Dst:             timeval_diff_msecs
    - functionName:    usleep
      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:    net_try_bind
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - bind
        - i_close_fd_path
        - i_error
        - sin_set_ip
        - socket
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:291,6'
          Branch Sides:
            - BranchSide:      'net.c:292,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'net.c:296,18'
              BranchSideFuncs:
                - sin_set_ip
                - bind
                - i_close_fd_path
                - i_close_fd_path
        - Branch String:   'net.c:297,6'
          Branch Sides:
            - BranchSide:      'net.c:298,3'
              BranchSideFuncs:
                - i_close_fd_path
            - BranchSide:      'net.c:301,2'
              BranchSideFuncs:
                - i_close_fd_path
      Callsites:
        - Src:             'net.c:290,7'
          Dst:             socket
        - Src:             'net.c:292,3'
          Dst:             i_error
        - Src:             'net.c:296,2'
          Dst:             sin_set_ip
        - Src:             'net.c:297,6'
          Dst:             bind
        - Src:             'net.c:298,3'
          Dst:             i_close_fd_path
        - Src:             'net.c:301,2'
          Dst:             i_close_fd_path
    - functionName:    net_connect_udp
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
        - port
        - my_ip
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - net_connect_ip_full
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:279,9'
          Dst:             net_connect_ip_full
    - functionName:    net_connect_ip_full
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ip
        - port
        - my_ip
        - sock_type
        - blocking
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - net_connect_ip_once
      functionUses:    3
      BranchProfiles:
        - Branch String:   'net.c:249,16'
          Branch Sides:
            - BranchSide:      'net.c:249,22'
              BranchSideFuncs: []
            - BranchSide:      'net.c:259,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:249,48'
          Branch Sides:
            - BranchSide:      'net.c:250,8'
              BranchSideFuncs: []
            - BranchSide:      'net.c:259,4'
              BranchSideFuncs: []
        - Branch String:   'net.c:249,7'
          Branch Sides:
            - BranchSide:      'net.c:247,2'
              BranchSideFuncs: []
            - BranchSide:      'net.c:259,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:248,8'
          Dst:             net_connect_ip_once
        - Src:             'net.c:250,8'
          Dst:             __errno_location
    - functionName:    net_connect_ip_blocking
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
        - port
        - my_ip
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - net_connect_ip_full
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:273,9'
          Dst:             net_connect_ip_full
    - functionName:    net_connect_ip
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
        - port
        - my_ip
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - net_connect_ip_full
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:267,9'
          Dst:             net_connect_ip_full
    - functionName:    net_ip_hash
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip
      BBCount:         12
      ICount:          95
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'net.c:110,6'
          Branch Sides:
            - BranchSide:      'net.c:111,7'
              BranchSideFuncs: []
            - BranchSide:      'net.c:115,10'
              BranchSideFuncs: []
        - Branch String:   'net.c:118,2'
          Branch Sides:
            - BranchSide:      'net.c:119,8'
              BranchSideFuncs: []
            - BranchSide:      'net.c:126,9'
              BranchSideFuncs: []
        - Branch String:   'net.c:120,7'
          Branch Sides:
            - BranchSide:      'net.c:121,8'
              BranchSideFuncs: []
            - BranchSide:      'net.c:124,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    net_ip_cmp
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip1
        - ip2
      BBCount:         10
      ICount:          77
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'net.c:91,6'
          Branch Sides:
            - BranchSide:      'net.c:92,10'
              BranchSideFuncs: []
            - BranchSide:      'net.c:94,10'
              BranchSideFuncs:
                - memcmp
                - memcmp
        - Branch String:   'net.c:94,2'
          Branch Sides:
            - BranchSide:      'net.c:96,18'
              BranchSideFuncs:
                - memcmp
            - BranchSide:      'net.c:98,18'
              BranchSideFuncs:
                - memcmp
            - BranchSide:      'net.c:100,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'net.c:96,10'
          Dst:             memcmp
        - Src:             'net.c:98,10'
          Dst:             memcmp
    - functionName:    net_ip_compare
      functionSourceFile: '/src/dovecot/src/lib/net.c'
      linkageType:     externalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ip1
        - ip2
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - net_ip_cmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'net.c:86,9'
          Dst:             net_ip_cmp
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
        - wanted
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_read_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   './istream.h:229,2'
          Branch Sides:
            - BranchSide:      './istream.h:229,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:229,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             './istream.h:229,2'
          Dst:             i_panic
        - Src:             './istream.h:230,9'
          Dst:             i_stream_read_data
    - functionName:    o_stream_create_passthrough
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 851
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - output
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - o_stream_create
        - o_stream_get_fd
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:854,11'
          Dst:             malloc_multiply_check
        - Src:             'ostream.c:854,11'
          Dst:             p_malloc
        - Src:             'ostream.c:855,41'
          Dst:             o_stream_get_fd
        - Src:             'ostream.c:855,9'
          Dst:             o_stream_create
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    o_stream_get_fd
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_create
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 761
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - _stream
        - parent
        - fd
      BBCount:         51
      ICount:          360
      EdgeCount:       67
      CyclomaticComplexity: 18
      functionsReached:
        - io_stream_init
        - o_stream_ref
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream.c:766,6'
          Branch Sides:
            - BranchSide:      'ostream.c:767,31'
              BranchSideFuncs:
                - o_stream_ref
                - io_stream_init
            - BranchSide:      'ostream.c:780,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:771,7'
          Branch Sides:
            - BranchSide:      'ostream.c:772,24'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:775,30'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:780,6'
          Branch Sides:
            - BranchSide:      'ostream.c:781,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:782,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:782,6'
          Branch Sides:
            - BranchSide:      'ostream.c:783,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:784,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:784,6'
          Branch Sides:
            - BranchSide:      'ostream.c:785,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:789,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:789,6'
          Branch Sides:
            - BranchSide:      'ostream.c:790,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:791,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:791,6'
          Branch Sides:
            - BranchSide:      'ostream.c:792,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:793,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:793,6'
          Branch Sides:
            - BranchSide:      'ostream.c:794,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:797,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:797,6'
          Branch Sides:
            - BranchSide:      'ostream.c:798,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:799,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:799,6'
          Branch Sides:
            - BranchSide:      'ostream.c:800,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:802,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:802,6'
          Branch Sides:
            - BranchSide:      'ostream.c:803,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:806,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:806,6'
          Branch Sides:
            - BranchSide:      'ostream.c:807,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:808,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:808,6'
          Branch Sides:
            - BranchSide:      'ostream.c:809,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:810,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:810,6'
          Branch Sides:
            - BranchSide:      'ostream.c:811,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:812,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:812,6'
          Branch Sides:
            - BranchSide:      'ostream.c:813,3'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:814,6'
              BranchSideFuncs:
                - io_stream_init
        - Branch String:   'ostream.c:814,6'
          Branch Sides:
            - BranchSide:      'ostream.c:814,6'
              BranchSideFuncs:
                - io_stream_init
            - BranchSide:      'ostream.c:815,3'
              BranchSideFuncs:
                - io_stream_init
      Callsites:
        - Src:             'ostream.c:769,3'
          Dst:             o_stream_ref
        - Src:             'ostream.c:817,2'
          Dst:             io_stream_init
    - functionName:    o_stream_ref
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_ref
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:97,2'
          Dst:             io_stream_ref
    - functionName:    o_stream_default_close
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_close
        - o_stream_flush
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:580,6'
          Branch Sides:
            - BranchSide:      'ostream.c:580,6'
              BranchSideFuncs:
                - o_stream_close
            - BranchSide:      'ostream.c:581,18'
              BranchSideFuncs:
                - o_stream_close
      Callsites:
        - Src:             'ostream.c:579,8'
          Dst:             o_stream_flush
        - Src:             'ostream.c:581,3'
          Dst:             o_stream_close
    - functionName:    o_stream_default_destroy
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_unref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:589,2'
          Dst:             o_stream_unref
    - functionName:    o_stream_default_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 602
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - max_size
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_set_max_buffer_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:599,6'
          Branch Sides:
            - BranchSide:      'ostream.c:599,6'
              BranchSideFuncs:
                - o_stream_set_max_buffer_size
            - BranchSide:      'ostream.c:600,32'
              BranchSideFuncs:
                - o_stream_set_max_buffer_size
      Callsites:
        - Src:             'ostream.c:600,3'
          Dst:             o_stream_set_max_buffer_size
    - functionName:    o_stream_default_cork
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 617
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - _stream
        - set
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - o_stream_cork
        - o_stream_flush
        - o_stream_uncork
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:607,6'
          Branch Sides:
            - BranchSide:      'ostream.c:608,7'
              BranchSideFuncs:
                - o_stream_cork
            - BranchSide:      'ostream.c:611,25'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_uncork
        - Branch String:   'ostream.c:608,7'
          Branch Sides:
            - BranchSide:      'ostream.c:609,18'
              BranchSideFuncs:
                - o_stream_cork
            - BranchSide:      'ostream.c:610,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:609,4'
          Dst:             o_stream_cork
        - Src:             'ostream.c:611,9'
          Dst:             o_stream_flush
        - Src:             'ostream.c:615,4'
          Dst:             o_stream_uncork
    - functionName:    o_stream_default_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_flush_parent
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:667,6'
          Branch Sides:
            - BranchSide:      'ostream.c:668,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:670,31'
              BranchSideFuncs:
                - o_stream_flush_parent
      Callsites:
        - Src:             'ostream.c:670,9'
          Dst:             o_stream_flush_parent
    - functionName:    o_stream_default_set_flush_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
        - callback
        - context
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - o_stream_set_flush_callback
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:678,30'
          Branch Sides:
            - BranchSide:      'ostream.c:678,33'
              BranchSideFuncs:
                - o_stream_set_flush_callback
            - BranchSide:      'ostream.c:678,30'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:678,6'
          Branch Sides:
            - BranchSide:      'ostream.c:678,6'
              BranchSideFuncs:
                - o_stream_set_flush_callback
            - BranchSide:      'ostream.c:679,31'
              BranchSideFuncs:
                - o_stream_set_flush_callback
      Callsites:
        - Src:             'ostream.c:679,3'
          Dst:             o_stream_set_flush_callback
    - functionName:    o_stream_default_set_flush_pending
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - _stream
        - set
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_set_flush_pending
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:688,6'
          Branch Sides:
            - BranchSide:      'ostream.c:688,6'
              BranchSideFuncs:
                - o_stream_set_flush_pending
            - BranchSide:      'ostream.c:689,30'
              BranchSideFuncs:
                - o_stream_set_flush_pending
      Callsites:
        - Src:             'ostream.c:689,3'
          Dst:             o_stream_set_flush_pending
    - functionName:    o_stream_default_get_buffer_used_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_get_buffer_used_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:695,6'
          Branch Sides:
            - BranchSide:      'ostream.c:696,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:698,40'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
      Callsites:
        - Src:             'ostream.c:698,10'
          Dst:             o_stream_get_buffer_used_size
    - functionName:    o_stream_default_get_buffer_avail_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_get_buffer_used_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:709,9'
          Branch Sides:
            - BranchSide:      'ostream.c:709,9'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:710,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:707,16'
          Dst:             o_stream_get_buffer_used_size
    - functionName:    o_stream_default_seek
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - _stream
        - offset
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_default_sendv
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 733
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - stream
        - iov
        - iov_count
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_copy_error_from_parent
        - o_stream_sendv
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:727,6'
          Branch Sides:
            - BranchSide:      'ostream.c:728,35'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:731,28'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:727,13'
          Dst:             o_stream_sendv
        - Src:             'ostream.c:728,3'
          Dst:             o_stream_copy_error_from_parent
    - functionName:    o_stream_default_write_at
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 741
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - _stream
        - data
        - size
        - offset
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_default_send_istream
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - outstream
        - instream
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_copy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:748,9'
          Dst:             io_stream_copy
    - functionName:    o_stream_default_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 757
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
        - ioloop
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_switch_ioloop_to
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:755,6'
          Branch Sides:
            - BranchSide:      'ostream.c:755,6'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
            - BranchSide:      'ostream.c:756,29'
              BranchSideFuncs:
                - o_stream_switch_ioloop_to
      Callsites:
        - Src:             'ostream.c:756,3'
          Dst:             o_stream_switch_ioloop_to
    - functionName:    o_stream_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - ioloop
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_switch_ioloop_to
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:563,2'
          Dst:             io_stream_switch_ioloop_to
    - functionName:    io_stream_copy
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - outstream
        - instream
      BBCount:         16
      ICount:          87
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - i_stream_have_bytes_left
        - i_stream_read_more
        - i_stream_skip
        - o_stream_sendv
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream.c:543,2'
          Branch Sides:
            - BranchSide:      'ostream.c:544,18'
              BranchSideFuncs:
                - o_stream_sendv
                - i_stream_skip
                - i_stream_read_more.8787
                - i_stream_have_bytes_left
            - BranchSide:      'ostream.c:552,6'
              BranchSideFuncs:
                - i_stream_have_bytes_left
        - Branch String:   'ostream.c:545,7'
          Branch Sides:
            - BranchSide:      'ostream.c:546,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:547,12'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_read_more.8787
                - i_stream_have_bytes_left
                - o_stream_sendv
        - Branch String:   'ostream.c:552,6'
          Branch Sides:
            - BranchSide:      'ostream.c:553,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:554,31'
              BranchSideFuncs:
                - i_stream_have_bytes_left
        - Branch String:   'ostream.c:554,6'
          Branch Sides:
            - BranchSide:      'ostream.c:555,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:556,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:543,9'
          Dst:             i_stream_read_more
        - Src:             'ostream.c:545,14'
          Dst:             o_stream_sendv
        - Src:             'ostream.c:549,3'
          Dst:             i_stream_skip
        - Src:             'ostream.c:554,6'
          Dst:             i_stream_have_bytes_left
    - functionName:    i_stream_read_more
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
      BBCount:         7
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_read_bytes
      functionUses:    1
      BranchProfiles:
        - Branch String:   './istream.h:238,2'
          Branch Sides:
            - BranchSide:      './istream.h:238,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:238,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './istream.h:237,12'
          Dst:             i_stream_read_bytes
        - Src:             './istream.h:238,2'
          Dst:             i_panic
    - functionName:    o_stream_sendv
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - stream
        - iov
        - iov_count
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - o_stream_sendv_int
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream.c:355,6'
          Branch Sides:
            - BranchSide:      'ostream.c:355,6'
              BranchSideFuncs:
                - o_stream_sendv_int
                - __errno_location
            - BranchSide:      'ostream.c:355,6'
              BranchSideFuncs:
                - o_stream_sendv_int
                - __errno_location
        - Branch String:   'ostream.c:355,6'
          Branch Sides:
            - BranchSide:      'ostream.c:356,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:359,28'
              BranchSideFuncs:
                - o_stream_sendv_int
      Callsites:
        - Src:             'ostream.c:356,3'
          Dst:             __errno_location
        - Src:             'ostream.c:359,9'
          Dst:             o_stream_sendv_int
    - functionName:    o_stream_sendv_int
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - iov
        - iov_count
        - overflow_r
      BBCount:         31
      ICount:          204
      EdgeCount:       36
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream.c:328,2'
          Branch Sides:
            - BranchSide:      'ostream.c:329,17'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:330,6'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:330,6'
          Branch Sides:
            - BranchSide:      'ostream.c:331,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:333,2'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:333,2'
          Branch Sides:
            - BranchSide:      'ostream.c:333,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:334,8'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:335,6'
          Branch Sides:
            - BranchSide:      'ostream.c:336,3'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:337,6'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:337,6'
          Branch Sides:
            - BranchSide:      'ostream.c:338,7'
              BranchSideFuncs:
                - i_panic
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:347,9'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:338,7'
          Branch Sides:
            - BranchSide:      'ostream.c:339,4'
              BranchSideFuncs:
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:342,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:339,4'
          Branch Sides:
            - BranchSide:      'ostream.c:339,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:340,12'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'ostream.c:342,4'
          Branch Sides:
            - BranchSide:      'ostream.c:342,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:343,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:333,2'
          Dst:             i_panic
        - Src:             'ostream.c:339,4'
          Dst:             i_panic
        - Src:             'ostream.c:340,4'
          Dst:             __errno_location
        - Src:             'ostream.c:342,4'
          Dst:             i_panic
    - functionName:    o_stream_copy_error_from_parent
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         10
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - o_stream_close
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream.c:624,2'
          Branch Sides:
            - BranchSide:      'ostream.c:624,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:626,23'
              BranchSideFuncs:
                - o_stream_close
        - Branch String:   'ostream.c:628,6'
          Branch Sides:
            - BranchSide:      'ostream.c:628,6'
              BranchSideFuncs:
                - o_stream_close
            - BranchSide:      'ostream.c:629,18'
              BranchSideFuncs:
                - o_stream_close
      Callsites:
        - Src:             'ostream.c:624,2'
          Dst:             i_panic
        - Src:             'ostream.c:629,3'
          Dst:             o_stream_close
    - functionName:    o_stream_close
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_close_full
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream.c:138,6'
          Branch Sides:
            - BranchSide:      'ostream.c:138,6'
              BranchSideFuncs:
                - o_stream_close_full
            - BranchSide:      'ostream.c:139,23'
              BranchSideFuncs:
                - o_stream_close_full
      Callsites:
        - Src:             'ostream.c:139,3'
          Dst:             o_stream_close_full
    - functionName:    o_stream_close_full
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parents
      BBCount:         21
      ICount:          150
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - io_stream_close
        - o_stream_flush
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream.c:61,6'
          Branch Sides:
            - BranchSide:      'ostream.c:62,3'
              BranchSideFuncs:
                - io_stream_close
                - i_panic
            - BranchSide:      'ostream.c:66,6'
              BranchSideFuncs:
                - io_stream_close
        - Branch String:   'ostream.c:62,3'
          Branch Sides:
            - BranchSide:      'ostream.c:62,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:66,6'
              BranchSideFuncs:
                - io_stream_close
        - Branch String:   'ostream.c:66,6'
          Branch Sides:
            - BranchSide:      'ostream.c:67,3'
              BranchSideFuncs:
                - io_stream_close
            - BranchSide:      'ostream.c:69,7'
              BranchSideFuncs:
                - io_stream_close
        - Branch String:   'ostream.c:69,22'
          Branch Sides:
            - BranchSide:      'ostream.c:69,26'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:79,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:69,6'
          Branch Sides:
            - BranchSide:      'ostream.c:74,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:79,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:79,6'
          Branch Sides:
            - BranchSide:      'ostream.c:79,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:80,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:61,6'
          Dst:             o_stream_flush
        - Src:             'ostream.c:62,3'
          Dst:             i_panic
        - Src:             'ostream.c:75,3'
          Dst:             io_stream_close
    - functionName:    o_stream_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         18
      ICount:          142
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - i_panic
        - io_stream_set_error
        - o_stream_get_max_buffer_size
        - o_stream_ignore_last_errors
      functionUses:    13
      BranchProfiles:
        - Branch String:   'ostream.c:245,6'
          Branch Sides:
            - BranchSide:      'ostream.c:245,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
                - __errno_location
            - BranchSide:      'ostream.c:245,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
                - __errno_location
        - Branch String:   'ostream.c:245,6'
          Branch Sides:
            - BranchSide:      'ostream.c:246,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:250,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
        - Branch String:   'ostream.c:250,6'
          Branch Sides:
            - BranchSide:      'ostream.c:251,24'
              BranchSideFuncs:
                - o_stream_get_max_buffer_size
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'ostream.c:258,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:258,6'
          Branch Sides:
            - BranchSide:      'ostream.c:259,3'
              BranchSideFuncs:
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:262,9'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:259,3'
          Branch Sides:
            - BranchSide:      'ostream.c:259,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:260,11'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ostream.c:243,2'
          Dst:             o_stream_ignore_last_errors
        - Src:             'ostream.c:246,3'
          Dst:             __errno_location
        - Src:             'ostream.c:253,4'
          Dst:             o_stream_get_max_buffer_size
        - Src:             'ostream.c:251,3'
          Dst:             io_stream_set_error
        - Src:             'ostream.c:254,3'
          Dst:             __errno_location
        - Src:             'ostream.c:259,3'
          Dst:             i_panic
        - Src:             'ostream.c:260,3'
          Dst:             __errno_location
    - functionName:    o_stream_ignore_last_errors
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream.c:415,2'
          Branch Sides:
            - BranchSide:      'ostream.c:416,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:419,1'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_get_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_get_buffer_used_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_set_flush_pending
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    7
      BranchProfiles:
        - Branch String:   'ostream.c:269,6'
          Branch Sides:
            - BranchSide:      'ostream.c:269,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:269,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:269,6'
          Branch Sides:
            - BranchSide:      'ostream.c:270,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:272,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_set_flush_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - callback
        - context
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_flush_parent
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         18
      ICount:          100
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - o_stream_copy_error_from_parent
        - o_stream_finish
        - o_stream_flush
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream.c:653,2'
          Branch Sides:
            - BranchSide:      'ostream.c:653,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:655,7'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
                - o_stream_finish
        - Branch String:   'ostream.c:655,25'
          Branch Sides:
            - BranchSide:      'ostream.c:655,29'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
                - o_stream_finish
            - BranchSide:      'ostream.c:657,24'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
        - Branch String:   'ostream.c:655,57'
          Branch Sides:
            - BranchSide:      'ostream.c:656,7'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
                - o_stream_finish
            - BranchSide:      'ostream.c:657,24'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_copy_error_from_parent
        - Branch String:   'ostream.c:655,6'
          Branch Sides:
            - BranchSide:      'ostream.c:657,24'
              BranchSideFuncs:
                - o_stream_finish
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:659,25'
              BranchSideFuncs:
                - o_stream_finish
                - o_stream_copy_error_from_parent
        - Branch String:   'ostream.c:660,6'
          Branch Sides:
            - BranchSide:      'ostream.c:660,6'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:661,35'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
      Callsites:
        - Src:             'ostream.c:653,2'
          Dst:             i_panic
        - Src:             'ostream.c:657,9'
          Dst:             o_stream_flush
        - Src:             'ostream.c:659,9'
          Dst:             o_stream_finish
        - Src:             'ostream.c:661,3'
          Dst:             o_stream_copy_error_from_parent
    - functionName:    o_stream_finish
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_flush
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:400,9'
          Dst:             o_stream_flush
    - functionName:    o_stream_cork
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    9
      BranchProfiles:
        - Branch String:   'ostream.c:215,6'
          Branch Sides:
            - BranchSide:      'ostream.c:215,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:215,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:215,6'
          Branch Sides:
            - BranchSide:      'ostream.c:216,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:218,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_uncork
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    10
      BranchProfiles:
        - Branch String:   'ostream.c:225,6'
          Branch Sides:
            - BranchSide:      'ostream.c:225,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:225,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:225,6'
          Branch Sides:
            - BranchSide:      'ostream.c:226,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:228,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_set_max_buffer_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - max_size
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_set_max_buffer_size
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:203,2'
          Dst:             io_stream_set_max_buffer_size
    - functionName:    o_stream_unref
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         16
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - io_stream_free
        - io_stream_unref
        - o_stream_get_name
      functionUses:    14
      BranchProfiles:
        - Branch String:   'ostream.c:104,6'
          Branch Sides:
            - BranchSide:      'ostream.c:105,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:107,12'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
                - o_stream_get_name
                - i_panic
        - Branch String:   'ostream.c:109,51'
          Branch Sides:
            - BranchSide:      'ostream.c:110,7'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
                - o_stream_get_name
                - i_panic
            - BranchSide:      'ostream.c:116,24'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
        - Branch String:   'ostream.c:110,52'
          Branch Sides:
            - BranchSide:      'ostream.c:111,6'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
            - BranchSide:      'ostream.c:116,24'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
        - Branch String:   'ostream.c:109,6'
          Branch Sides:
            - BranchSide:      'ostream.c:113,22'
              BranchSideFuncs:
                - o_stream_get_name
                - i_panic
            - BranchSide:      'ostream.c:116,24'
              BranchSideFuncs:
                - io_stream_unref
                - io_stream_free
        - Branch String:   'ostream.c:116,6'
          Branch Sides:
            - BranchSide:      'ostream.c:117,19'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:118,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:113,4'
          Dst:             o_stream_get_name
        - Src:             'ostream.c:112,3'
          Dst:             i_panic
        - Src:             'ostream.c:116,7'
          Dst:             io_stream_unref
        - Src:             'ostream.c:117,3'
          Dst:             io_stream_free
    - functionName:    o_stream_get_name
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         7
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream.c:15,2'
          Branch Sides:
            - BranchSide:      'ostream.c:16,12'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:20,9'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:17,7'
          Branch Sides:
            - BranchSide:      'ostream.c:15,2'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:18,4'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_create_error_str
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream_errno
        - fmt
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_set_verror
        - o_stream_create_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:844,11'
          Dst:             o_stream_create_error
        - Src:             'ostream.c:845,2'
          Dst:             io_stream_set_verror
    - functionName:    o_stream_create_error
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - stream_errno
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - o_stream_create
        - o_stream_set_name
        - o_stream_set_no_error_handling
        - p_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:826,11'
          Dst:             malloc_multiply_check
        - Src:             'ostream.c:826,11'
          Dst:             p_malloc
        - Src:             'ostream.c:831,11'
          Dst:             o_stream_create
        - Src:             'ostream.c:832,2'
          Dst:             o_stream_set_no_error_handling
        - Src:             'ostream.c:833,2'
          Dst:             o_stream_set_name
    - functionName:    o_stream_set_no_error_handling
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_set_name
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 8
      functionLinenumberEnd: 11
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - name
      BBCount:         5
      ICount:          44
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_strdup
        - p_free_internal
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:9,2'
          Dst:             p_free_internal
        - Src:             'ostream.c:10,39'
          Dst:             i_strdup
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_flush_parent_if_needed
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - o_stream_copy_error_from_parent
        - o_stream_flush
        - o_stream_get_buffer_used_size
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ostream.c:634,6'
          Branch Sides:
            - BranchSide:      'ostream.c:639,22'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_get_buffer_used_size
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:646,2'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:639,7'
          Branch Sides:
            - BranchSide:      'ostream.c:640,36'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream.c:643,37'
              BranchSideFuncs:
                - o_stream_get_buffer_used_size
        - Branch String:   'ostream.c:643,7'
          Branch Sides:
            - BranchSide:      'ostream.c:644,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:645,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:634,6'
          Dst:             o_stream_get_buffer_used_size
        - Src:             'ostream.c:639,7'
          Dst:             o_stream_flush
        - Src:             'ostream.c:640,4'
          Dst:             o_stream_copy_error_from_parent
        - Src:             'ostream.c:643,7'
          Dst:             o_stream_get_buffer_used_size
    - functionName:    o_stream_switch_ioloop
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_switch_ioloop_to
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:570,2'
          Dst:             o_stream_switch_ioloop_to
    - functionName:    o_stream_get_last_write_time
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - tv_r
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_pwrite
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data
        - size
        - offset
      BBCount:         23
      ICount:          160
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ostream.c:513,6'
          Branch Sides:
            - BranchSide:      'ostream.c:513,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - i_panic
                - __errno_location
            - BranchSide:      'ostream.c:513,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - i_panic
                - __errno_location
        - Branch String:   'ostream.c:513,6'
          Branch Sides:
            - BranchSide:      'ostream.c:514,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:518,2'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:518,2'
          Branch Sides:
            - BranchSide:      'ostream.c:518,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:519,8'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:521,6'
          Branch Sides:
            - BranchSide:      'ostream.c:522,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:523,11'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:524,3'
          Branch Sides:
            - BranchSide:      'ostream.c:524,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:525,11'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ostream.c:514,3'
          Dst:             __errno_location
        - Src:             'ostream.c:518,2'
          Dst:             i_panic
        - Src:             'ostream.c:524,3'
          Dst:             i_panic
        - Src:             'ostream.c:525,3'
          Dst:             __errno_location
    - functionName:    o_stream_nsend_istream
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - outstream
        - instream
      BBCount:         14
      ICount:          99
      EdgeCount:       26
      CyclomaticComplexity: 14
      functionsReached:
        - i_panic
        - i_stream_get_error
        - i_stream_get_name
        - i_unreached
        - io_stream_set_error
        - o_stream_send_istream
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ostream.c:485,2'
          Branch Sides:
            - BranchSide:      'ostream.c:485,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:487,32'
              BranchSideFuncs:
                - o_stream_send_istream
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
                - i_unreached
        - Branch String:   'ostream.c:487,2'
          Branch Sides:
            - BranchSide:      'ostream.c:487,2'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:489,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:491,3'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'ostream.c:493,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:496,29'
              BranchSideFuncs:
                - i_stream_get_name
                - i_stream_get_error
                - io_stream_set_error
            - BranchSide:      'ostream.c:503,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:485,2'
          Dst:             i_panic
        - Src:             'ostream.c:487,10'
          Dst:             o_stream_send_istream
        - Src:             'ostream.c:491,3'
          Dst:             i_unreached
        - Src:             'ostream.c:499,4'
          Dst:             i_stream_get_name
        - Src:             'ostream.c:500,4'
          Dst:             i_stream_get_error
        - Src:             'ostream.c:497,3'
          Dst:             io_stream_set_error
    - functionName:    o_stream_send_istream
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - outstream
        - instream
      BBCount:         60
      ICount:          361
      EdgeCount:       64
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - i_panic
        - i_stream_have_bytes_left
        - o_stream_set_flush_pending
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream.c:443,6'
          Branch Sides:
            - BranchSide:      'ostream.c:443,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
                - i_panic
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
            - BranchSide:      'ostream.c:443,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
                - i_panic
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
                - __errno_location
        - Branch String:   'ostream.c:443,6'
          Branch Sides:
            - BranchSide:      'ostream.c:444,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:447,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
                - i_panic
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
        - Branch String:   'ostream.c:447,6'
          Branch Sides:
            - BranchSide:      'ostream.c:447,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
                - i_panic
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
            - BranchSide:      'ostream.c:447,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
                - i_panic
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - __errno_location
        - Branch String:   'ostream.c:447,6'
          Branch Sides:
            - BranchSide:      'ostream.c:448,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:452,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
                - i_panic
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:452,2'
          Branch Sides:
            - BranchSide:      'ostream.c:452,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:453,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
                - i_panic
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:454,2'
          Branch Sides:
            - BranchSide:      'ostream.c:456,3'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:461,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:464,3'
              BranchSideFuncs:
                - o_stream_set_flush_pending
                - i_panic
                - i_panic
            - BranchSide:      'ostream.c:468,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:471,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:475,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:456,3'
          Branch Sides:
            - BranchSide:      'ostream.c:456,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:457,3'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:457,3'
          Branch Sides:
            - BranchSide:      'ostream.c:457,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:458,3'
              BranchSideFuncs:
                - i_stream_have_bytes_left
                - i_panic
                - i_panic
        - Branch String:   'ostream.c:458,3'
          Branch Sides:
            - BranchSide:      'ostream.c:458,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:459,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:461,3'
          Branch Sides:
            - BranchSide:      'ostream.c:461,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:462,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream.c:464,3'
          Branch Sides:
            - BranchSide:      'ostream.c:464,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:465,30'
              BranchSideFuncs:
                - o_stream_set_flush_pending
                - i_panic
        - Branch String:   'ostream.c:468,3'
          Branch Sides:
            - BranchSide:      'ostream.c:468,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:469,10'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:471,3'
          Branch Sides:
            - BranchSide:      'ostream.c:471,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:472,10'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:475,2'
          Branch Sides:
            - BranchSide:      'ostream.c:475,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:478,6'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:478,6'
          Branch Sides:
            - BranchSide:      'ostream.c:479,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:480,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:444,3'
          Dst:             __errno_location
        - Src:             'ostream.c:448,3'
          Dst:             __errno_location
        - Src:             'ostream.c:452,2'
          Dst:             i_panic
        - Src:             'ostream.c:456,3'
          Dst:             i_panic
        - Src:             'ostream.c:457,3'
          Dst:             i_panic
        - Src:             'ostream.c:458,3'
          Dst:             i_stream_have_bytes_left
        - Src:             'ostream.c:458,3'
          Dst:             i_panic
        - Src:             'ostream.c:461,3'
          Dst:             i_panic
        - Src:             'ostream.c:464,3'
          Dst:             i_panic
        - Src:             'ostream.c:465,3'
          Dst:             o_stream_set_flush_pending
        - Src:             'ostream.c:468,3'
          Dst:             i_panic
        - Src:             'ostream.c:471,3'
          Dst:             i_panic
        - Src:             'ostream.c:475,2'
          Dst:             i_panic
    - functionName:    o_stream_abort
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_stream_set_error
        - o_stream_ignore_last_errors
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ostream.c:424,6'
          Branch Sides:
            - BranchSide:      'ostream.c:425,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:426,23'
              BranchSideFuncs:
                - io_stream_set_error
      Callsites:
        - Src:             'ostream.c:423,2'
          Dst:             o_stream_ignore_last_errors
        - Src:             'ostream.c:426,2'
          Dst:             io_stream_set_error
    - functionName:    o_stream_set_finish_via_child
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_set_finish_also_parent
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_nsend_str
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - str
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_nsend
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:394,30'
          Dst:             strlen
        - Src:             'ostream.c:394,2'
          Dst:             o_stream_nsend
    - functionName:    o_stream_nsend
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data
        - size
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_nsendv
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:375,2'
          Dst:             o_stream_nsendv
    - functionName:    o_stream_nsendv
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - stream
        - iov
        - iov_count
      BBCount:         14
      ICount:          98
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - o_stream_sendv_int
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:383,6'
          Branch Sides:
            - BranchSide:      'ostream.c:383,6'
              BranchSideFuncs:
                - o_stream_sendv_int
            - BranchSide:      'ostream.c:383,6'
              BranchSideFuncs:
                - o_stream_sendv_int
        - Branch String:   'ostream.c:383,6'
          Branch Sides:
            - BranchSide:      'ostream.c:383,6'
              BranchSideFuncs:
                - o_stream_sendv_int
            - BranchSide:      'ostream.c:383,6'
              BranchSideFuncs:
                - o_stream_sendv_int
        - Branch String:   'ostream.c:383,6'
          Branch Sides:
            - BranchSide:      'ostream.c:385,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:386,27'
              BranchSideFuncs:
                - o_stream_sendv_int
        - Branch String:   'ostream.c:387,6'
          Branch Sides:
            - BranchSide:      'ostream.c:388,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:389,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:386,8'
          Dst:             o_stream_sendv_int
    - functionName:    o_stream_send_str
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - str
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_send
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:364,36'
          Dst:             strlen
        - Src:             'ostream.c:364,9'
          Dst:             o_stream_send
    - functionName:    o_stream_send
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data
        - size
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_sendv
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:314,10'
          Dst:             o_stream_sendv
    - functionName:    o_stream_seek
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - offset
      BBCount:         15
      ICount:          112
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ostream.c:293,6'
          Branch Sides:
            - BranchSide:      'ostream.c:293,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - __errno_location
            - BranchSide:      'ostream.c:293,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - __errno_location
        - Branch String:   'ostream.c:293,6'
          Branch Sides:
            - BranchSide:      'ostream.c:294,11'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream.c:298,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'ostream.c:298,6'
          Branch Sides:
            - BranchSide:      'ostream.c:299,3'
              BranchSideFuncs:
                - __errno_location
                - i_panic
            - BranchSide:      'ostream.c:303,2'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:299,3'
          Branch Sides:
            - BranchSide:      'ostream.c:299,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream.c:300,11'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ostream.c:294,3'
          Dst:             __errno_location
        - Src:             'ostream.c:299,3'
          Dst:             i_panic
        - Src:             'ostream.c:300,3'
          Dst:             __errno_location
    - functionName:    o_stream_get_buffer_avail_size
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_is_corked
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_get_flush_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - context_r
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_unset_flush_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_default_buffering_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         17
      ICount:          112
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - o_stream_flush
        - o_stream_ref
        - o_stream_set_flush_pending
        - o_stream_unref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream.c:148,6'
          Branch Sides:
            - BranchSide:      'ostream.c:149,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:152,15'
              BranchSideFuncs:
                - o_stream_ref
                - o_stream_flush
                - o_stream_unref
                - o_stream_set_flush_pending
        - Branch String:   'ostream.c:153,6'
          Branch Sides:
            - BranchSide:      'ostream.c:154,10'
              BranchSideFuncs:
                - o_stream_unref
                - o_stream_set_flush_pending
            - BranchSide:      'ostream.c:156,25'
              BranchSideFuncs:
                - o_stream_flush
                - o_stream_unref
                - o_stream_set_flush_pending
        - Branch String:   'ostream.c:157,6'
          Branch Sides:
            - BranchSide:      'ostream.c:158,30'
              BranchSideFuncs:
                - o_stream_set_flush_pending
                - o_stream_unref
            - BranchSide:      'ostream.c:159,2'
              BranchSideFuncs:
                - o_stream_unref
        - Branch String:   'ostream.c:160,6'
          Branch Sides:
            - BranchSide:      'ostream.c:161,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:162,9'
              BranchSideFuncs: []
        - Branch String:   'ostream.c:162,17'
          Branch Sides:
            - BranchSide:      'ostream.c:162,20'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:162,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream.c:148,13'
          Dst:             o_stream_flush
        - Src:             'ostream.c:152,2'
          Dst:             o_stream_ref
        - Src:             'ostream.c:156,10'
          Dst:             o_stream_flush
        - Src:             'ostream.c:158,3'
          Dst:             o_stream_set_flush_pending
        - Src:             'ostream.c:159,2'
          Dst:             o_stream_unref
    - functionName:    o_stream_init_buffering_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
        - parent
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_default_buffering_flush
        - o_stream_set_flush_callback
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:172,2'
          Dst:             o_stream_set_flush_callback
        - Src:             'ostream.c:172,2'
          Dst:             o_stream_default_buffering_flush
    - functionName:    o_stream_remove_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - callback
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_remove_destroy_callback
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:132,2'
          Dst:             io_stream_remove_destroy_callback
    - functionName:    o_stream_add_destroy_callback
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - callback
        - context
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_add_destroy_callback
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:125,2'
          Dst:             io_stream_add_destroy_callback
    - functionName:    o_stream_destroy
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _stream
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_close_full
        - o_stream_unref
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream.c:87,6'
          Branch Sides:
            - BranchSide:      'ostream.c:88,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:90,3'
              BranchSideFuncs:
                - o_stream_close_full
                - o_stream_unref
      Callsites:
        - Src:             'ostream.c:91,2'
          Dst:             o_stream_close_full
        - Src:             'ostream.c:92,2'
          Dst:             o_stream_unref
    - functionName:    o_stream_get_disconnect_reason
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - io_stream_get_disconnect_reason
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream.c:48,9'
          Dst:             io_stream_get_disconnect_reason
    - functionName:    o_stream_get_error
      functionSourceFile: '/src/dovecot/src/lib/ostream.c'
      linkageType:     externalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strerror
      functionUses:    5
      BranchProfiles:
        - Branch String:   'ostream.c:34,6'
          Branch Sides:
            - BranchSide:      'ostream.c:35,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:37,11'
              BranchSideFuncs:
                - strerror
        - Branch String:   'ostream.c:37,2'
          Branch Sides:
            - BranchSide:      'ostream.c:38,7'
              BranchSideFuncs:
                - strerror
            - BranchSide:      'ostream.c:43,18'
              BranchSideFuncs:
                - strerror
        - Branch String:   'ostream.c:38,7'
          Branch Sides:
            - BranchSide:      'ostream.c:39,4'
              BranchSideFuncs:
                - strerror
            - BranchSide:      'ostream.c:40,7'
              BranchSideFuncs:
                - strerror
        - Branch String:   'ostream.c:40,7'
          Branch Sides:
            - BranchSide:      'ostream.c:41,11'
              BranchSideFuncs: []
            - BranchSide:      'ostream.c:42,2'
              BranchSideFuncs:
                - strerror
      Callsites:
        - Src:             'ostream.c:43,9'
          Dst:             strerror
    - functionName:    i_stream_read_bytes
      functionSourceFile: '/src/dovecot/src/lib/./istream.h'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data_r
        - size_r
        - wanted
      BBCount:         7
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_stream_read_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   './istream.h:229,2'
          Branch Sides:
            - BranchSide:      './istream.h:229,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './istream.h:229,2'
              BranchSideFuncs:
                - i_stream_read_data
      Callsites:
        - Src:             './istream.h:229,2'
          Dst:             i_panic
        - Src:             './istream.h:230,9'
          Dst:             i_stream_read_data
    - functionName:    io_stream_copy_backwards
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 870
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - outstream
        - instream
        - in_size
      BBCount:         45
      ICount:          360
      EdgeCount:       54
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - i_memcpy
        - i_panic
        - i_stream_read_bytes
        - i_stream_seek
        - i_stream_skip
        - i_unreached
        - o_stream_grow_buffer
        - pwrite_full
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:878,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:878,2'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
                - i_panic
            - BranchSide:      'ostream-file.c:878,2'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
                - i_panic
        - Branch String:   'ostream-file.c:878,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:878,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:881,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
        - Branch String:   'ostream-file.c:882,23'
          Branch Sides:
            - BranchSide:      'ostream-file.c:882,26'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
            - BranchSide:      'ostream-file.c:883,7'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
        - Branch String:   'ostream-file.c:882,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:883,7'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
                - o_stream_grow_buffer
            - BranchSide:      'ostream-file.c:892,20'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:883,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:884,25'
              BranchSideFuncs:
                - o_stream_grow_buffer
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
            - BranchSide:      'ostream-file.c:889,17'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:896,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:897,7'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
            - BranchSide:      'ostream-file.c:944,16'
              BranchSideFuncs:
                - i_stream_seek
        - Branch String:   'ostream-file.c:897,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:898,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
            - BranchSide:      'ostream-file.c:900,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:905,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:905,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:907,18'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8960
                - i_panic
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
        - Branch String:   'ostream-file.c:911,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:913,5'
              BranchSideFuncs:
                - i_unreached
            - BranchSide:      'ostream-file.c:914,8'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8960
                - i_unreached
                - i_panic
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8969
                - i_panic
        - Branch String:   'ostream-file.c:914,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:915,12'
              BranchSideFuncs:
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - i_unreached
                - i_panic
                - __errno_location
                - i_memcpy.8969
                - i_panic
            - BranchSide:      'ostream-file.c:928,17'
              BranchSideFuncs:
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
        - Branch String:   'ostream-file.c:916,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:919,6'
              BranchSideFuncs:
                - i_memcpy.8969
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - i_unreached
                - i_panic
                - __errno_location
                - i_panic
            - BranchSide:      'ostream-file.c:924,5'
              BranchSideFuncs:
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
                - __errno_location
        - Branch String:   'ostream-file.c:919,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:919,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:921,6'
              BranchSideFuncs:
                - i_memcpy.8969
                - pwrite_full
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - i_panic
                - i_unreached
                - i_panic
                - __errno_location
        - Branch String:   'ostream-file.c:936,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:938,38'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'ostream-file.c:941,17'
              BranchSideFuncs:
                - i_stream_skip
                - i_stream_seek
                - i_stream_seek
                - i_stream_read_bytes.8960
                - pwrite_full
                - __errno_location
                - i_memcpy.8969
                - i_panic
                - i_unreached
                - i_panic
      Callsites:
        - Src:             'ostream-file.c:878,2'
          Dst:             i_panic
        - Src:             'ostream-file.c:884,4'
          Dst:             o_stream_grow_buffer
        - Src:             'ostream-file.c:905,4'
          Dst:             i_panic
        - Src:             'ostream-file.c:907,4'
          Dst:             i_stream_seek
        - Src:             'ostream-file.c:911,8'
          Dst:             i_stream_read_bytes
        - Src:             'ostream-file.c:913,5'
          Dst:             i_unreached
        - Src:             'ostream-file.c:919,6'
          Dst:             i_panic
        - Src:             'ostream-file.c:921,6'
          Dst:             i_memcpy
        - Src:             'ostream-file.c:935,9'
          Dst:             pwrite_full
        - Src:             'ostream-file.c:938,38'
          Dst:             __errno_location
        - Src:             'ostream-file.c:941,3'
          Dst:             i_stream_skip
        - Src:             'ostream-file.c:944,2'
          Dst:             i_stream_seek
    - functionName:    o_stream_grow_buffer
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fstream
        - bytes
      BBCount:         26
      ICount:          207
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - i_realloc
        - nearest_power
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream-file.c:502,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:504,10'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ostream-file.c:505,13'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:507,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:507,12'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ostream-file.c:507,12'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:509,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:510,11'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ostream-file.c:511,2'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:513,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:514,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:516,30'
              BranchSideFuncs:
                - i_realloc
        - Branch String:   'ostream-file.c:519,37'
          Branch Sides:
            - BranchSide:      'ostream-file.c:519,41'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:527,2'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:519,41'
          Branch Sides:
            - BranchSide:      'ostream-file.c:519,41'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:521,14'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:519,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:521,14'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:527,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:501,9'
          Dst:             nearest_power
        - Src:             'ostream-file.c:516,20'
          Dst:             i_realloc
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    io_stream_copy_same_stream
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - outstream
        - instream
      BBCount:         23
      ICount:          142
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - i_stream_get_absolute_offset
        - i_stream_get_size
        - io_stream_copy
        - io_stream_copy_backwards
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:960,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:961,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:962,6'
              BranchSideFuncs:
                - i_stream_get_absolute_offset
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
                - i_panic
                - io_stream_copy
        - Branch String:   'ostream-file.c:962,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:967,26'
              BranchSideFuncs:
                - io_stream_copy
            - BranchSide:      'ostream-file.c:969,2'
              BranchSideFuncs:
                - i_stream_get_absolute_offset
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:969,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:969,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:971,47'
              BranchSideFuncs:
                - i_stream_get_absolute_offset
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
        - Branch String:   'ostream-file.c:973,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:976,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:978,6'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
        - Branch String:   'ostream-file.c:978,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:978,17'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_backwards
                - i_panic
            - BranchSide:      'ostream-file.c:984,26'
              BranchSideFuncs:
                - io_stream_copy
        - Branch String:   'ostream-file.c:978,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:980,3'
              BranchSideFuncs:
                - io_stream_copy_backwards
                - i_panic
            - BranchSide:      'ostream-file.c:984,26'
              BranchSideFuncs:
                - io_stream_copy
        - Branch String:   'ostream-file.c:980,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:980,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:981,35'
              BranchSideFuncs:
                - io_stream_copy_backwards
      Callsites:
        - Src:             'ostream-file.c:960,13'
          Dst:             i_stream_get_size
        - Src:             'ostream-file.c:967,10'
          Dst:             io_stream_copy
        - Src:             'ostream-file.c:969,2'
          Dst:             i_panic
        - Src:             'ostream-file.c:971,18'
          Dst:             i_stream_get_absolute_offset
        - Src:             'ostream-file.c:980,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:981,10'
          Dst:             io_stream_copy_backwards
        - Src:             'ostream-file.c:984,10'
          Dst:             io_stream_copy
    - functionName:    io_stream_sendfile
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - outstream
        - instream
        - in_fd
        - res_r
      BBCount:         50
      ICount:          339
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - __errno_location
        - buffer_flush
        - i_panic
        - i_stream_get_absolute_offset
        - i_stream_get_size
        - i_stream_seek
        - io_stream_set_error
        - o_stream_lseek
        - o_stream_socket_cork
        - safe_sendfile
        - stream_closed
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:780,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:781,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:784,6'
              BranchSideFuncs:
                - o_stream_socket_cork
                - buffer_flush
                - o_stream_lseek
                - i_stream_get_absolute_offset
                - i_stream_seek
                - i_panic
                - safe_sendfile
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
        - Branch String:   'ostream-file.c:784,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:786,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:789,23'
              BranchSideFuncs:
                - o_stream_socket_cork
                - buffer_flush
                - o_stream_lseek
                - i_stream_get_absolute_offset
                - i_stream_seek
                - i_panic
                - safe_sendfile
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
        - Branch String:   'ostream-file.c:792,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:793,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:795,13'
              BranchSideFuncs:
                - o_stream_lseek
                - i_stream_get_absolute_offset
                - i_stream_seek
                - i_panic
                - safe_sendfile
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
        - Branch String:   'ostream-file.c:800,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:801,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:805,13'
              BranchSideFuncs:
                - i_stream_get_absolute_offset
                - i_stream_seek
                - i_panic
                - safe_sendfile
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
        - Branch String:   'ostream-file.c:807,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:808,12'
              BranchSideFuncs:
                - safe_sendfile
                - i_stream_seek
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
            - BranchSide:      'ostream-file.c:851,16'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:812,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:811,9'
              BranchSideFuncs:
                - safe_sendfile
                - i_stream_seek
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
            - BranchSide:      'ostream-file.c:811,9'
              BranchSideFuncs:
                - safe_sendfile
                - i_stream_seek
                - i_panic
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
        - Branch String:   'ostream-file.c:813,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:814,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
                - __errno_location
                - safe_sendfile
                - i_stream_seek
            - BranchSide:      'ostream-file.c:845,15'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
                - safe_sendfile
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
        - Branch String:   'ostream-file.c:814,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:816,19'
              BranchSideFuncs:
                - i_stream_seek
            - BranchSide:      'ostream-file.c:821,8'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
                - __errno_location
                - safe_sendfile
                - i_stream_seek
        - Branch String:   'ostream-file.c:821,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:822,9'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
                - safe_sendfile
                - __errno_location
                - __errno_location
                - i_stream_seek
            - BranchSide:      'ostream-file.c:827,9'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:822,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:824,6'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
                - safe_sendfile
                - __errno_location
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - i_stream_seek
            - BranchSide:      'ostream-file.c:826,4'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:827,24'
          Branch Sides:
            - BranchSide:      'ostream-file.c:827,27'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
            - BranchSide:      'ostream-file.c:828,10'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:827,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:0,0'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
            - BranchSide:      'ostream-file.c:828,10'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:832,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:833,28'
              BranchSideFuncs:
                - i_stream_seek
                - i_panic
            - BranchSide:      'ostream-file.c:835,26'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - i_stream_seek
                - i_panic
        - Branch String:   'ostream-file.c:852,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:853,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:857,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:857,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:857,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:858,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:858,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:859,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:860,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:860,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:861,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:863,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:780,13'
          Dst:             i_stream_get_size
        - Src:             'ostream-file.c:789,2'
          Dst:             o_stream_socket_cork
        - Src:             'ostream-file.c:792,13'
          Dst:             buffer_flush
        - Src:             'ostream-file.c:800,6'
          Dst:             o_stream_lseek
        - Src:             'ostream-file.c:806,21'
          Dst:             i_stream_get_absolute_offset
        - Src:             'ostream-file.c:811,9'
          Dst:             safe_sendfile
        - Src:             'ostream-file.c:816,5'
          Dst:             i_stream_seek
        - Src:             'ostream-file.c:822,9'
          Dst:             __errno_location
        - Src:             'ostream-file.c:827,9'
          Dst:             __errno_location
        - Src:             'ostream-file.c:827,27'
          Dst:             __errno_location
        - Src:             'ostream-file.c:832,8'
          Dst:             __errno_location
        - Src:             'ostream-file.c:835,5'
          Dst:             io_stream_set_error
        - Src:             'ostream-file.c:837,39'
          Dst:             __errno_location
        - Src:             'ostream-file.c:840,5'
          Dst:             stream_closed
        - Src:             'ostream-file.c:851,2'
          Dst:             i_stream_seek
        - Src:             'ostream-file.c:857,2'
          Dst:             i_panic
    - functionName:    o_stream_socket_cork
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - net_set_cork
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream-file.c:120,30'
          Branch Sides:
            - BranchSide:      'ostream-file.c:120,34'
              BranchSideFuncs:
                - net_set_cork
            - BranchSide:      'ostream-file.c:120,30'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:120,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:120,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:121,8'
              BranchSideFuncs:
                - net_set_cork
        - Branch String:   'ostream-file.c:121,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:122,21'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:127,2'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:122,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:123,5'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:125,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:122,8'
          Dst:             net_set_cork
    - functionName:    buffer_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - o_stream_file_writev_full
        - o_stream_fill_iovec
        - update_buffer
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream-file.c:355,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:356,35'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - update_buffer
            - BranchSide:      'ostream-file.c:363,9'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:357,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:358,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:360,17'
              BranchSideFuncs:
                - update_buffer
        - Branch String:   'ostream-file.c:363,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:363,9'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:363,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:354,12'
          Dst:             o_stream_fill_iovec
        - Src:             'ostream-file.c:356,9'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:360,3'
          Dst:             update_buffer
    - functionName:    o_stream_lseek
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         10
      ICount:          92
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - io_stream_set_error
        - lseek
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream-file.c:134,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:135,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:137,14'
              BranchSideFuncs:
                - lseek
                - io_stream_set_error
                - io_stream_set_error
                - __errno_location
        - Branch String:   'ostream-file.c:138,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:139,24'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
            - BranchSide:      'ostream-file.c:145,6'
              BranchSideFuncs:
                - io_stream_set_error
        - Branch String:   'ostream-file.c:145,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:146,24'
              BranchSideFuncs:
                - io_stream_set_error
            - BranchSide:      'ostream-file.c:151,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:137,8'
          Dst:             lseek
        - Src:             'ostream-file.c:139,3'
          Dst:             io_stream_set_error
        - Src:             'ostream-file.c:141,43'
          Dst:             __errno_location
        - Src:             'ostream-file.c:146,3'
          Dst:             io_stream_set_error
    - functionName:    stream_closed
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         19
      ICount:          117
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - close
        - i_error
        - io_remove
        - iostream_fd_unref
        - o_stream_get_name
      functionUses:    5
      BranchProfiles:
        - Branch String:   'ostream-file.c:38,43'
          Branch Sides:
            - BranchSide:      'ostream-file.c:38,7'
              BranchSideFuncs:
                - iostream_fd_unref
                - close
                - o_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'ostream-file.c:39,22'
              BranchSideFuncs:
                - iostream_fd_unref
                - close
                - o_stream_get_name
                - i_error
                - __errno_location
        - Branch String:   'ostream-file.c:40,28'
          Branch Sides:
            - BranchSide:      'ostream-file.c:40,31'
              BranchSideFuncs:
                - close
                - o_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'ostream-file.c:40,28'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:40,49'
          Branch Sides:
            - BranchSide:      'ostream-file.c:40,53'
              BranchSideFuncs:
                - close
                - o_stream_get_name
                - i_error
                - __errno_location
            - BranchSide:      'ostream-file.c:40,49'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:40,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:40,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:44,7'
              BranchSideFuncs:
                - close
                - o_stream_get_name
                - i_error
                - __errno_location
        - Branch String:   'ostream-file.c:44,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:44,7'
              BranchSideFuncs:
                - __errno_location
                - o_stream_get_name
                - i_error
            - BranchSide:      'ostream-file.c:44,7'
              BranchSideFuncs:
                - o_stream_get_name
                - i_error
        - Branch String:   'ostream-file.c:44,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:46,24'
              BranchSideFuncs:
                - o_stream_get_name
                - i_error
            - BranchSide:      'ostream-file.c:48,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:36,2'
          Dst:             io_remove
        - Src:             'ostream-file.c:39,3'
          Dst:             iostream_fd_unref
        - Src:             'ostream-file.c:44,7'
          Dst:             close
        - Src:             'ostream-file.c:44,7'
          Dst:             __errno_location
        - Src:             'ostream-file.c:46,5'
          Dst:             o_stream_get_name
        - Src:             'ostream-file.c:45,4'
          Dst:             i_error
    - functionName:    lseek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    o_stream_fill_iovec
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
        - iov
      BBCount:         11
      ICount:          128
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:328,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:328,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:331,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:328,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:329,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:331,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:331,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:332,21'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:336,21'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:338,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:339,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:341,22'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_file_writev_full
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - fstream
        - iov
        - iov_count
      BBCount:         81
      ICount:          502
      EdgeCount:       102
      CyclomaticComplexity: 23
      functionsReached:
        - __errno_location
        - i_panic
        - io_stream_set_error
        - net_set_tcp_nodelay
        - o_stream_file_writev_full
        - o_stream_socket_cork
        - stream_closed
      functionUses:    6
      BranchProfiles:
        - Branch String:   'ostream-file.c:239,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:240,17'
              BranchSideFuncs:
                - o_stream_socket_cork
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
                - net_set_tcp_nodelay
            - BranchSide:      'ostream-file.c:242,23'
              BranchSideFuncs:
                - o_stream_socket_cork
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
                - net_set_tcp_nodelay
        - Branch String:   'ostream-file.c:243,32'
          Branch Sides:
            - BranchSide:      'ostream-file.c:243,36'
              BranchSideFuncs:
                - net_set_tcp_nodelay
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:256,8'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:243,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:246,27'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:256,8'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:246,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:251,4'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:253,3'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:259,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:260,3'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:275,6'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
        - Branch String:   'ostream-file.c:260,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:260,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:261,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - __errno_location
                - o_stream_file_writev_full
        - Branch String:   'ostream-file.c:261,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:262,8'
              BranchSideFuncs:
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
                - o_stream_file_writev_full
            - BranchSide:      'ostream-file.c:266,14'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - io_stream_set_error
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:262,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:264,38'
              BranchSideFuncs:
                - o_stream_file_writev_full
            - BranchSide:      'ostream-file.c:266,3'
              BranchSideFuncs:
                - io_stream_set_error
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:266,30'
          Branch Sides:
            - BranchSide:      'ostream-file.c:266,33'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:268,4'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:266,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:0,0'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:268,4'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:275,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:275,6'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
            - BranchSide:      'ostream-file.c:275,6'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - stream_closed
        - Branch String:   'ostream-file.c:275,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:277,3'
              BranchSideFuncs:
                - stream_closed
            - BranchSide:      'ostream-file.c:281,28'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:282,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:282,17'
              BranchSideFuncs:
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:319,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:282,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:286,10'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:319,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:287,24'
          Branch Sides:
            - BranchSide:      'ostream-file.c:287,27'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:287,3'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:287,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:288,12'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
            - BranchSide:      'ostream-file.c:292,3'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:292,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:292,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:293,7'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
                - o_stream_file_writev_full
        - Branch String:   'ostream-file.c:293,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:294,37'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:300,5'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
                - o_stream_file_writev_full
                - i_panic
        - Branch String:   'ostream-file.c:304,5'
          Branch Sides:
            - BranchSide:      'ostream-file.c:304,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:306,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_file_writev_full
        - Branch String:   'ostream-file.c:306,9'
          Branch Sides:
            - BranchSide:      'ostream-file.c:307,13'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:311,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:313,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:313,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:314,7'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:314,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:315,10'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:317,11'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:319,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:319,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:319,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:319,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:319,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:319,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:319,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:319,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:321,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:242,2'
          Dst:             o_stream_socket_cork
        - Src:             'ostream-file.c:246,7'
          Dst:             net_set_tcp_nodelay
        - Src:             'ostream-file.c:260,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:262,8'
          Dst:             __errno_location
        - Src:             'ostream-file.c:264,12'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:266,14'
          Dst:             __errno_location
        - Src:             'ostream-file.c:266,33'
          Dst:             __errno_location
        - Src:             'ostream-file.c:270,3'
          Dst:             io_stream_set_error
        - Src:             'ostream-file.c:271,43'
          Dst:             __errno_location
        - Src:             'ostream-file.c:272,3'
          Dst:             stream_closed
        - Src:             'ostream-file.c:278,3'
          Dst:             stream_closed
        - Src:             'ostream-file.c:292,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:294,11'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:302,11'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:304,5'
          Dst:             i_panic
        - Src:             'ostream-file.c:308,13'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:313,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:319,2'
          Dst:             i_panic
    - functionName:    update_buffer
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fstream
        - size
      BBCount:         31
      ICount:          205
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:89,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:89,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:89,34'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:89,31'
          Branch Sides:
            - BranchSide:      'ostream-file.c:89,34'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:90,3'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:89,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:90,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:92,6'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:92,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:94,10'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:99,10'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:95,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:95,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:96,20'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:100,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:101,12'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:105,21'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:102,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:102,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:103,20'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:111,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:112,19'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:114,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:114,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:114,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:115,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:95,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:102,4'
          Dst:             i_panic
    - functionName:    o_stream_file_update_buffer
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - fstream
        - data
        - size
        - pos
      BBCount:         21
      ICount:          165
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - i_memcpy
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:688,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:690,3'
              BranchSideFuncs:
                - i_memcpy.8969
                - i_memcpy.8969
                - i_panic
            - BranchSide:      'ostream-file.c:694,11'
              BranchSideFuncs:
                - i_memcpy.8969
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:690,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:690,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:691,11'
              BranchSideFuncs:
                - i_memcpy.8969
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:696,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:696,12'
              BranchSideFuncs:
                - i_memcpy.8969
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:696,12'
              BranchSideFuncs:
                - i_memcpy.8969
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:701,15'
          Branch Sides:
            - BranchSide:      'ostream-file.c:701,18'
              BranchSideFuncs:
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:701,15'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:701,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:701,6'
              BranchSideFuncs:
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:703,15'
              BranchSideFuncs:
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:703,15'
          Branch Sides:
            - BranchSide:      'ostream-file.c:703,13'
              BranchSideFuncs:
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:703,13'
              BranchSideFuncs:
                - i_memcpy.8969
      Callsites:
        - Src:             'ostream-file.c:690,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:697,2'
          Dst:             i_memcpy
        - Src:             'ostream-file.c:704,3'
          Dst:             i_memcpy
    - functionName:    file_buffer_get_used_size
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:73,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:74,10'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:75,11'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:74,10'
          Branch Sides:
            - BranchSide:      'ostream-file.c:74,26'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:74,3'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:75,11'
          Branch Sides:
            - BranchSide:      'ostream-file.c:77,10'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:80,10'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_tcp_flush_via_nodelay
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - net_set_tcp_nodelay
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:368,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:374,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:376,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:368,6'
          Dst:             net_set_tcp_nodelay
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    stream_send_io
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         29
      ICount:          201
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - io_add_to
        - io_remove
        - io_stream_get_ioloop
        - o_stream_cork
        - o_stream_file_flush
        - o_stream_ref
        - o_stream_uncork
        - o_stream_unref
        - stream_send_io
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream-file.c:545,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:546,17'
              BranchSideFuncs:
                - o_stream_cork
                - o_stream_file_flush
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
                - o_stream_uncork
            - BranchSide:      'ostream-file.c:547,6'
              BranchSideFuncs:
                - o_stream_file_flush
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
                - o_stream_uncork
        - Branch String:   'ostream-file.c:547,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:548,9'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
                - o_stream_uncork
            - BranchSide:      'ostream-file.c:550,30'
              BranchSideFuncs:
                - o_stream_file_flush
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
                - o_stream_uncork
        - Branch String:   'ostream-file.c:551,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:552,19'
              BranchSideFuncs:
                - o_stream_uncork
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
            - BranchSide:      'ostream-file.c:554,6'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
        - Branch String:   'ostream-file.c:554,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:555,3'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
            - BranchSide:      'ostream-file.c:557,7'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
        - Branch String:   'ostream-file.c:557,30'
          Branch Sides:
            - BranchSide:      'ostream-file.c:557,33'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:559,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:557,33'
          Branch Sides:
            - BranchSide:      'ostream-file.c:557,33'
              BranchSideFuncs:
                - io_remove
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:559,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:557,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:558,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:559,14'
              BranchSideFuncs:
                - o_stream_unref
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:563,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:564,18'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - o_stream_unref
            - BranchSide:      'ostream-file.c:568,2'
              BranchSideFuncs:
                - o_stream_unref
      Callsites:
        - Src:             'ostream-file.c:544,2'
          Dst:             o_stream_ref
        - Src:             'ostream-file.c:546,3'
          Dst:             o_stream_cork
        - Src:             'ostream-file.c:550,9'
          Dst:             o_stream_file_flush
        - Src:             'ostream-file.c:552,3'
          Dst:             o_stream_uncork
        - Src:             'ostream-file.c:558,3'
          Dst:             io_remove
        - Src:             'ostream-file.c:564,18'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:564,18'
          Dst:             io_add_to
        - Src:             'ostream-file.c:564,18'
          Dst:             stream_send_io
        - Src:             'ostream-file.c:570,2'
          Dst:             o_stream_unref
    - functionName:    o_stream_file_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_flush
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:434,9'
          Dst:             buffer_flush
    - functionName:    o_stream_create_fd_blocking
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - fd
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_multiply_check
        - o_stream_create_file_common
        - p_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:1193,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-file.c:1193,12'
          Dst:             p_malloc
        - Src:             'ostream-file.c:1194,12'
          Dst:             o_stream_create_file_common
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    o_stream_create_file_common
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1029
      functionLinenumberEnd: 1058
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - fstream
        - fd
        - max_buffer_size
        - autoclose_fd
      BBCount:         6
      ICount:          124
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - o_stream_create
      functionUses:    4
      BranchProfiles:
        - Branch String:   'ostream-file.c:1055,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1055,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1056,38'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:1053,12'
          Dst:             o_stream_create
    - functionName:    o_stream_file_close
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_closed
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:60,2'
          Dst:             stream_closed
    - functionName:    o_stream_file_destroy
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         5
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:68,2'
          Dst:             p_free_internal
    - functionName:    o_stream_file_cork
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         54
      ICount:          313
      EdgeCount:       72
      CyclomaticComplexity: 20
      functionsReached:
        - buffer_flush
        - i_panic
        - io_add_to
        - io_remove
        - io_stream_get_ioloop
        - net_set_cork
        - net_set_tcp_quickack
        - o_stream_tcp_flush_via_nodelay
        - stream_send_io
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:387,28'
          Branch Sides:
            - BranchSide:      'ostream-file.c:387,32'
              BranchSideFuncs:
                - buffer_flush
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
            - BranchSide:      'ostream-file.c:387,28'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:387,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:387,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:388,7'
              BranchSideFuncs:
                - buffer_flush
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
        - Branch String:   'ostream-file.c:388,11'
          Branch Sides:
            - BranchSide:      'ostream-file.c:388,14'
              BranchSideFuncs:
                - buffer_flush
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
                - io_stream_get_ioloop
                - io_add_to
                - io_remove
            - BranchSide:      'ostream-file.c:390,13'
              BranchSideFuncs:
                - buffer_flush
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:388,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:389,15'
              BranchSideFuncs:
                - io_remove
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
            - BranchSide:      'ostream-file.c:390,13'
              BranchSideFuncs:
                - buffer_flush
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:394,28'
          Branch Sides:
            - BranchSide:      'ostream-file.c:395,9'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:402,3'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:395,18'
          Branch Sides:
            - BranchSide:      'ostream-file.c:395,21'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
            - BranchSide:      'ostream-file.c:396,9'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:395,45'
          Branch Sides:
            - BranchSide:      'ostream-file.c:396,9'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
            - BranchSide:      'ostream-file.c:402,3'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:394,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:397,19'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
            - BranchSide:      'ostream-file.c:402,3'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:403,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:405,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:408,7'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - net_set_cork
                - i_panic
        - Branch String:   'ostream-file.c:408,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:409,4'
              BranchSideFuncs:
                - net_set_cork
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
                - i_panic
            - BranchSide:      'ostream-file.c:414,8'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:409,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:409,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:410,21'
              BranchSideFuncs:
                - net_set_cork
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:410,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:411,5'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
            - BranchSide:      'ostream-file.c:412,4'
              BranchSideFuncs:
                - o_stream_tcp_flush_via_nodelay
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:414,12'
          Branch Sides:
            - BranchSide:      'ostream-file.c:414,16'
              BranchSideFuncs:
                - net_set_tcp_quickack
            - BranchSide:      'ostream-file.c:419,8'
              BranchSideFuncs:
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:414,43'
          Branch Sides:
            - BranchSide:      'ostream-file.c:415,8'
              BranchSideFuncs:
                - net_set_tcp_quickack
            - BranchSide:      'ostream-file.c:419,8'
              BranchSideFuncs:
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:414,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:417,35'
              BranchSideFuncs:
                - net_set_tcp_quickack
            - BranchSide:      'ostream-file.c:419,8'
              BranchSideFuncs:
                - net_set_tcp_quickack
        - Branch String:   'ostream-file.c:419,12'
          Branch Sides:
            - BranchSide:      'ostream-file.c:419,16'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:425,20'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:419,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:422,29'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:425,20'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:422,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:423,5'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:424,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:389,4'
          Dst:             io_remove
        - Src:             'ostream-file.c:392,10'
          Dst:             buffer_flush
        - Src:             'ostream-file.c:397,19'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:397,19'
          Dst:             io_add_to
        - Src:             'ostream-file.c:397,19'
          Dst:             stream_send_io
        - Src:             'ostream-file.c:409,4'
          Dst:             i_panic
        - Src:             'ostream-file.c:410,8'
          Dst:             net_set_cork
        - Src:             'ostream-file.c:417,4'
          Dst:             o_stream_tcp_flush_via_nodelay
        - Src:             'ostream-file.c:422,8'
          Dst:             net_set_tcp_quickack
    - functionName:    o_stream_file_flush_pending
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - set
      BBCount:         10
      ICount:          82
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - io_add_to
        - io_stream_get_ioloop
        - stream_send_io
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:445,10'
          Branch Sides:
            - BranchSide:      'ostream-file.c:445,14'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:445,10'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:445,29'
          Branch Sides:
            - BranchSide:      'ostream-file.c:445,29'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:445,32'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:445,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:445,6'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:446,17'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
      Callsites:
        - Src:             'ostream-file.c:446,17'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:446,17'
          Dst:             io_add_to
        - Src:             'ostream-file.c:446,17'
          Dst:             stream_send_io
    - functionName:    o_stream_file_get_buffer_used_size
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_unused_space
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:472,32'
          Dst:             get_unused_space
    - functionName:    o_stream_file_seek
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - offset
      BBCount:         10
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_flush
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:480,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:481,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:484,7'
              BranchSideFuncs:
                - buffer_flush
        - Branch String:   'ostream-file.c:484,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:485,3'
              BranchSideFuncs:
                - buffer_flush
            - BranchSide:      'ostream-file.c:489,19'
              BranchSideFuncs:
                - buffer_flush
        - Branch String:   'ostream-file.c:489,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:490,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:492,27'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:489,6'
          Dst:             buffer_flush
    - functionName:    o_stream_file_sendv
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - stream
        - iov
        - iov_count
      BBCount:         68
      ICount:          453
      EdgeCount:       87
      CyclomaticComplexity: 21
      functionsReached:
        - get_unused_space
        - i_panic
        - o_stream_add
        - o_stream_file_flush
        - o_stream_file_writev_full
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:625,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:626,11'
              BranchSideFuncs:
                - get_unused_space
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - o_stream_file_flush
            - BranchSide:      'ostream-file.c:627,15'
              BranchSideFuncs:
                - get_unused_space
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - o_stream_file_flush
        - Branch String:   'ostream-file.c:629,39'
          Branch Sides:
            - BranchSide:      'ostream-file.c:629,43'
              BranchSideFuncs:
                - o_stream_file_flush
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:634,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:629,43'
          Branch Sides:
            - BranchSide:      'ostream-file.c:629,43'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - o_stream_file_flush
            - BranchSide:      'ostream-file.c:630,27'
              BranchSideFuncs:
                - o_stream_file_flush
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:629,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:630,27'
              BranchSideFuncs:
                - o_stream_file_flush
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:634,17'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:630,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:631,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:632,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:634,17'
          Branch Sides:
            - BranchSide:      'ostream-file.c:634,15'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:634,15'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:636,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:636,6'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:670,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:636,31'
          Branch Sides:
            - BranchSide:      'ostream-file.c:637,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
            - BranchSide:      'ostream-file.c:670,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:637,23'
          Branch Sides:
            - BranchSide:      'ostream-file.c:637,26'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:639,35'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:636,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:639,35'
              BranchSideFuncs:
                - o_stream_file_writev_full
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:670,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:640,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:641,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:643,10'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:644,19'
          Branch Sides:
            - BranchSide:      'ostream-file.c:644,22'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:644,3'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:644,36'
          Branch Sides:
            - BranchSide:      'ostream-file.c:644,39'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:644,3'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:644,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:645,12'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:650,7'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
        - Branch String:   'ostream-file.c:650,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:651,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
                - i_panic
            - BranchSide:      'ostream-file.c:653,25'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:651,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:651,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:667,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:658,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:660,31'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:664,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:670,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:671,24'
              BranchSideFuncs:
                - o_stream_add
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:676,28'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'ostream-file.c:673,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:674,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ostream-file.c:675,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - o_stream_add
        - Branch String:   'ostream-file.c:677,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:677,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:678,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:678,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:678,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:678,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ostream-file.c:678,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:678,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:679,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:629,13'
          Dst:             get_unused_space
        - Src:             'ostream-file.c:630,7'
          Dst:             o_stream_file_flush
        - Src:             'ostream-file.c:639,9'
          Dst:             o_stream_file_writev_full
        - Src:             'ostream-file.c:651,4'
          Dst:             i_panic
        - Src:             'ostream-file.c:653,12'
          Dst:             o_stream_add
        - Src:             'ostream-file.c:671,11'
          Dst:             o_stream_add
        - Src:             'ostream-file.c:677,2'
          Dst:             i_panic
        - Src:             'ostream-file.c:678,2'
          Dst:             i_panic
    - functionName:    o_stream_file_write_at
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 713
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - stream
        - data
        - size
        - offset
      BBCount:         27
      ICount:          218
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - file_buffer_get_used_size
        - o_stream_file_flush
        - o_stream_file_update_buffer
        - pwrite_full
        - stream_closed
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:720,15'
          Branch Sides:
            - BranchSide:      'ostream-file.c:721,6'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
                - o_stream_file_update_buffer
            - BranchSide:      'ostream-file.c:758,26'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:721,45'
          Branch Sides:
            - BranchSide:      'ostream-file.c:722,6'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
                - o_stream_file_update_buffer
            - BranchSide:      'ostream-file.c:758,26'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:720,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:723,7'
              BranchSideFuncs:
                - o_stream_file_update_buffer
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:758,26'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:723,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:725,9'
              BranchSideFuncs:
                - o_stream_file_update_buffer
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:727,11'
              BranchSideFuncs:
                - o_stream_file_update_buffer
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:733,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:735,8'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:747,14'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:735,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:739,4'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:741,27'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:747,14'
          Branch Sides:
            - BranchSide:      'ostream-file.c:749,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:752,11'
              BranchSideFuncs:
                - o_stream_file_flush
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:758,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:759,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:761,18'
              BranchSideFuncs:
                - pwrite_full
                - __errno_location
                - stream_closed
        - Branch String:   'ostream-file.c:761,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:762,34'
              BranchSideFuncs:
                - __errno_location
                - stream_closed
            - BranchSide:      'ostream-file.c:766,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:719,9'
          Dst:             file_buffer_get_used_size
        - Src:             'ostream-file.c:731,10'
          Dst:             o_stream_file_update_buffer
        - Src:             'ostream-file.c:758,6'
          Dst:             o_stream_file_flush
        - Src:             'ostream-file.c:761,6'
          Dst:             pwrite_full
        - Src:             'ostream-file.c:762,34'
          Dst:             __errno_location
        - Src:             'ostream-file.c:763,3'
          Dst:             stream_closed
    - functionName:    o_stream_file_send_istream
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 991
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - outstream
        - instream
      BBCount:         23
      ICount:          156
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - i_stream_get_fd
        - io_stream_copy
        - io_stream_copy_same_stream
        - io_stream_sendfile
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:998,10'
          Branch Sides:
            - BranchSide:      'ostream-file.c:998,56'
              BranchSideFuncs:
                - i_stream_get_fd
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
                - io_stream_sendfile
            - BranchSide:      'ostream-file.c:998,8'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
                - io_stream_sendfile
        - Branch String:   'ostream-file.c:999,31'
          Branch Sides:
            - BranchSide:      'ostream-file.c:999,34'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1009,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:999,46'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1000,6'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
                - io_stream_sendfile
            - BranchSide:      'ostream-file.c:1009,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:1000,30'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1000,33'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
                - io_stream_sendfile
            - BranchSide:      'ostream-file.c:1009,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:999,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1001,26'
              BranchSideFuncs:
                - io_stream_sendfile
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1009,32'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:1001,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1002,11'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1006,3'
              BranchSideFuncs:
                - i_stream_get_fd
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:1009,60'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1009,14'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1010,3'
              BranchSideFuncs:
                - io_stream_copy
                - io_stream_copy_same_stream
        - Branch String:   'ostream-file.c:1011,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1012,26'
              BranchSideFuncs:
                - io_stream_copy_same_stream
            - BranchSide:      'ostream-file.c:1013,36'
              BranchSideFuncs:
                - io_stream_copy_same_stream
      Callsites:
        - Src:             'ostream-file.c:998,40'
          Dst:             i_stream_get_fd
        - Src:             'ostream-file.c:1001,7'
          Dst:             io_stream_sendfile
        - Src:             'ostream-file.c:1009,16'
          Dst:             i_stream_get_fd
        - Src:             'ostream-file.c:1012,10'
          Dst:             io_stream_copy
        - Src:             'ostream-file.c:1013,9'
          Dst:             io_stream_copy_same_stream
    - functionName:    o_stream_file_switch_ioloop_to
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1018
      functionLinenumberEnd: 1024
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
        - ioloop
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - io_loop_move_io_to
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:1022,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1022,6'
              BranchSideFuncs:
                - io_loop_move_io_to
            - BranchSide:      'ostream-file.c:1023,36'
              BranchSideFuncs:
                - io_loop_move_io_to
      Callsites:
        - Src:             'ostream-file.c:1023,17'
          Dst:             io_loop_move_io_to
    - functionName:    o_stream_file_writev
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
        - iov
        - iov_count
        - error_r
      BBCount:         57
      ICount:          353
      EdgeCount:       72
      CyclomaticComplexity: 17
      functionsReached:
        - i_panic
        - o_stream_get_error
        - o_stream_lseek
        - pwrite
        - t_strdup
        - t_strdup_printf
        - write
        - writev
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ostream-file.c:165,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:166,3'
              BranchSideFuncs:
                - write
                - t_strdup_printf
                - i_panic
                - pwrite
                - i_panic
            - BranchSide:      'ostream-file.c:180,22'
              BranchSideFuncs:
                - o_stream_lseek
                - t_strdup_printf
                - i_panic
                - writev
                - writev
                - o_stream_get_error
                - t_strdup
        - Branch String:   'ostream-file.c:166,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:166,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:168,8'
              BranchSideFuncs:
                - write
                - t_strdup_printf
                - i_panic
                - pwrite
        - Branch String:   'ostream-file.c:168,22'
          Branch Sides:
            - BranchSide:      'ostream-file.c:169,7'
              BranchSideFuncs:
                - pwrite
                - t_strdup_printf
                - i_panic
                - write
            - BranchSide:      'ostream-file.c:170,12'
              BranchSideFuncs:
                - write
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-file.c:168,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:170,12'
              BranchSideFuncs:
                - write
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ostream-file.c:175,12'
              BranchSideFuncs:
                - pwrite
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-file.c:172,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:173,29'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ostream-file.c:174,3'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-file.c:180,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:181,44'
              BranchSideFuncs:
                - o_stream_get_error
                - t_strdup
            - BranchSide:      'ostream-file.c:185,11'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - writev
                - writev
        - Branch String:   'ostream-file.c:187,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:188,9'
              BranchSideFuncs:
                - writev
                - t_strdup_printf
                - i_panic
                - writev
            - BranchSide:      'ostream-file.c:204,7'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - writev
        - Branch String:   'ostream-file.c:189,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:190,13'
              BranchSideFuncs:
                - writev
                - t_strdup_printf
                - i_panic
                - writev
            - BranchSide:      'ostream-file.c:192,17'
              BranchSideFuncs:
                - writev
                - t_strdup_printf
                - i_panic
                - writev
        - Branch String:   'ostream-file.c:194,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:195,5'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - writev
            - BranchSide:      'ostream-file.c:198,28'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
                - writev
                - writev
        - Branch String:   'ostream-file.c:204,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:205,9'
              BranchSideFuncs:
                - writev
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ostream-file.c:214,7'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-file.c:206,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:207,13'
              BranchSideFuncs:
                - writev
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ostream-file.c:209,17'
              BranchSideFuncs:
                - writev
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-file.c:211,8'
          Branch Sides:
            - BranchSide:      'ostream-file.c:212,29'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ostream-file.c:213,3'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-file.c:214,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:215,11'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ostream-file.c:216,13'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-file.c:221,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:222,3'
              BranchSideFuncs:
                - t_strdup_printf
                - i_panic
            - BranchSide:      'ostream-file.c:225,9'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:222,3'
          Branch Sides:
            - BranchSide:      'ostream-file.c:222,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-file.c:223,49'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'ostream-file.c:166,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:171,10'
          Dst:             write
        - Src:             'ostream-file.c:176,10'
          Dst:             pwrite
        - Src:             'ostream-file.c:180,7'
          Dst:             o_stream_lseek
        - Src:             'ostream-file.c:181,24'
          Dst:             o_stream_get_error
        - Src:             'ostream-file.c:181,15'
          Dst:             t_strdup
        - Src:             'ostream-file.c:192,10'
          Dst:             writev
        - Src:             'ostream-file.c:209,10'
          Dst:             writev
        - Src:             'ostream-file.c:222,3'
          Dst:             i_panic
        - Src:             'ostream-file.c:223,14'
          Dst:             t_strdup_printf
    - functionName:    pwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    writev
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unused_space
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ostream-file.c:454,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:456,10'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:457,13'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:457,13'
          Branch Sides:
            - BranchSide:      'ostream-file.c:459,11'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:462,10'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:462,10'
          Branch Sides:
            - BranchSide:      'ostream-file.c:462,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:462,30'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    o_stream_add
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fstream
        - data
        - size
      BBCount:         38
      ICount:          276
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - get_unused_space
        - i_memcpy
        - io_add_to
        - io_stream_get_ioloop
        - o_stream_grow_buffer
        - stream_send_io
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream-file.c:581,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:582,24'
              BranchSideFuncs:
                - o_stream_grow_buffer
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:584,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:585,20'
          Branch Sides:
            - BranchSide:      'ostream-file.c:585,23'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:585,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:585,35'
          Branch Sides:
            - BranchSide:      'ostream-file.c:585,39'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:585,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:585,2'
          Branch Sides:
            - BranchSide:      'ostream-file.c:586,12'
              BranchSideFuncs:
                - i_memcpy.8969
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:605,6'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:586,12'
          Branch Sides:
            - BranchSide:      'ostream-file.c:587,4'
              BranchSideFuncs:
                - i_memcpy.8969
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:588,4'
              BranchSideFuncs:
                - i_memcpy.8969
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:590,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:591,13'
              BranchSideFuncs:
                - i_memcpy.8969
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:592,3'
              BranchSideFuncs:
                - i_memcpy.8969
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:597,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:598,4'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:600,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:600,38'
          Branch Sides:
            - BranchSide:      'ostream-file.c:601,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:603,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:600,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:602,4'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
            - BranchSide:      'ostream-file.c:603,2'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
                - i_memcpy.8969
        - Branch String:   'ostream-file.c:605,16'
          Branch Sides:
            - BranchSide:      'ostream-file.c:605,19'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:605,16'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:605,39'
          Branch Sides:
            - BranchSide:      'ostream-file.c:605,39'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
            - BranchSide:      'ostream-file.c:606,7'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:606,31'
          Branch Sides:
            - BranchSide:      'ostream-file.c:606,31'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:606,35'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
        - Branch String:   'ostream-file.c:605,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:605,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:607,17'
              BranchSideFuncs:
                - io_stream_get_ioloop
                - io_add_to
      Callsites:
        - Src:             'ostream-file.c:580,11'
          Dst:             get_unused_space
        - Src:             'ostream-file.c:582,3'
          Dst:             o_stream_grow_buffer
        - Src:             'ostream-file.c:592,3'
          Dst:             i_memcpy
        - Src:             'ostream-file.c:607,17'
          Dst:             io_stream_get_ioloop
        - Src:             'ostream-file.c:607,17'
          Dst:             io_add_to
        - Src:             'ostream-file.c:607,17'
          Dst:             stream_send_io
    - functionName:    o_stream_create_file
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - path
        - offset
        - mode
        - flags
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - o_stream_create_error
        - o_stream_create_fd_file_autoclose
        - open
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ostream-file.c:1179,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1180,14'
              BranchSideFuncs:
                - open
                - o_stream_create_fd_file_autoclose
                - __errno_location
                - o_stream_create_error
            - BranchSide:      'ostream-file.c:1182,14'
              BranchSideFuncs:
                - open
                - o_stream_create_fd_file_autoclose
                - __errno_location
                - o_stream_create_error
        - Branch String:   'ostream-file.c:1183,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1184,32'
              BranchSideFuncs:
                - __errno_location
                - o_stream_create_error
            - BranchSide:      'ostream-file.c:1185,48'
              BranchSideFuncs:
                - o_stream_create_fd_file_autoclose
      Callsites:
        - Src:             'ostream-file.c:1183,12'
          Dst:             open
        - Src:             'ostream-file.c:1184,32'
          Dst:             __errno_location
        - Src:             'ostream-file.c:1184,10'
          Dst:             o_stream_create_error
        - Src:             'ostream-file.c:1185,9'
          Dst:             o_stream_create_fd_file_autoclose
    - functionName:    o_stream_create_fd_file_autoclose
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - offset
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_create_fd_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:1169,11'
          Dst:             o_stream_create_fd_file
    - functionName:    o_stream_create_fd_file
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1148
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - fd
        - offset
        - autoclose_fd
      BBCount:         6
      ICount:          81
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fstream_init_file
        - lseek
        - malloc_multiply_check
        - o_stream_create_file_common
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-file.c:1152,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1152,6'
              BranchSideFuncs:
                - lseek
                - malloc_multiply_check.8990
                - p_malloc.8991
                - o_stream_create_file_common
                - fstream_init_file
            - BranchSide:      'ostream-file.c:1153,18'
              BranchSideFuncs:
                - lseek
                - malloc_multiply_check.8990
                - p_malloc.8991
                - o_stream_create_file_common
                - fstream_init_file
      Callsites:
        - Src:             'ostream-file.c:1153,12'
          Dst:             lseek
        - Src:             'ostream-file.c:1155,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-file.c:1155,12'
          Dst:             p_malloc
        - Src:             'ostream-file.c:1156,12'
          Dst:             o_stream_create_file_common
        - Src:             'ostream-file.c:1157,2'
          Dst:             fstream_init_file
    - functionName:    fstream_init_file
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1062
      functionLinenumberEnd: 1081
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
      BBCount:         14
      ICount:          103
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - fstat
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream-file.c:1066,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1067,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1069,17'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:1069,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1072,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1075,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:1072,4'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1071,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1071,3'
              BranchSideFuncs: []
        - Branch String:   'ostream-file.c:1075,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1075,6'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1076,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:1066,6'
          Dst:             fstat
    - functionName:    o_stream_create_fd_ref_autoclose
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ref
        - max_buffer_size
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_create_fd_common
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:1143,9'
          Dst:             o_stream_create_fd_common
    - functionName:    o_stream_create_fd_common
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1086
      functionLinenumberEnd: 1122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - fd
        - ref
        - max_buffer_size
        - autoclose_fd
      BBCount:         15
      ICount:          154
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - fstream_init_file
        - iostream_fd_ref
        - lseek
        - malloc_multiply_check
        - net_getsockname
        - o_stream_create_file_common
        - p_malloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'ostream-file.c:1092,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1093,21'
              BranchSideFuncs:
                - iostream_fd_ref
                - o_stream_create_file_common
                - lseek
                - net_getsockname
                - fstream_init_file
            - BranchSide:      'ostream-file.c:1097,4'
              BranchSideFuncs:
                - o_stream_create_file_common
                - lseek
                - net_getsockname
                - fstream_init_file
        - Branch String:   'ostream-file.c:1100,6'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1101,21'
              BranchSideFuncs:
                - fstream_init_file
            - BranchSide:      'ostream-file.c:1108,23'
              BranchSideFuncs:
                - net_getsockname
        - Branch String:   'ostream-file.c:1108,7'
          Branch Sides:
            - BranchSide:      'ostream-file.c:1110,4'
              BranchSideFuncs: []
            - BranchSide:      'ostream-file.c:1114,23'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-file.c:1091,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-file.c:1091,12'
          Dst:             p_malloc
        - Src:             'ostream-file.c:1094,3'
          Dst:             iostream_fd_ref
        - Src:             'ostream-file.c:1096,12'
          Dst:             o_stream_create_file_common
        - Src:             'ostream-file.c:1099,11'
          Dst:             lseek
        - Src:             'ostream-file.c:1104,3'
          Dst:             fstream_init_file
        - Src:             'ostream-file.c:1108,7'
          Dst:             net_getsockname
    - functionName:    o_stream_create_fd_autoclose
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - max_buffer_size
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_create_fd_common
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:1134,28'
          Dst:             o_stream_create_fd_common
    - functionName:    o_stream_create_fd
      functionSourceFile: '/src/dovecot/src/lib/ostream-file.c'
      linkageType:     externalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - max_buffer_size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_create_fd_common
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-file.c:1128,9'
          Dst:             o_stream_create_fd_common
    - functionName:    o_stream_rawlog_flush
      functionSourceFile: '/src/dovecot/src/lib/ostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - stream
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iostream_rawlog_flush
        - o_stream_flush_parent
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-rawlog.c:59,6'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:59,6'
              BranchSideFuncs:
                - iostream_rawlog_flush
                - o_stream_flush_parent
            - BranchSide:      'ostream-rawlog.c:60,26'
              BranchSideFuncs:
                - iostream_rawlog_flush
                - o_stream_flush_parent
      Callsites:
        - Src:             'ostream-rawlog.c:60,3'
          Dst:             iostream_rawlog_flush
        - Src:             'ostream-rawlog.c:61,9'
          Dst:             o_stream_flush_parent
    - functionName:    o_stream_rawlog_close
      functionSourceFile: '/src/dovecot/src/lib/ostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iostream_rawlog_close
        - o_stream_close
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-rawlog.c:20,6'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:20,6'
              BranchSideFuncs:
                - o_stream_close
            - BranchSide:      'ostream-rawlog.c:21,18'
              BranchSideFuncs:
                - o_stream_close
      Callsites:
        - Src:             'ostream-rawlog.c:19,2'
          Dst:             iostream_rawlog_close
        - Src:             'ostream-rawlog.c:21,3'
          Dst:             o_stream_close
    - functionName:    o_stream_rawlog_sendv
      functionSourceFile: '/src/dovecot/src/lib/ostream-rawlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - stream
        - iov
        - iov_count
      BBCount:         17
      ICount:          144
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - iostream_rawlog_write
        - o_stream_copy_error_from_parent
        - o_stream_sendv
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-rawlog.c:33,6'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:34,35'
              BranchSideFuncs:
                - o_stream_copy_error_from_parent
            - BranchSide:      'ostream-rawlog.c:37,10'
              BranchSideFuncs:
                - iostream_rawlog_write
                - iostream_rawlog_write
        - Branch String:   'ostream-rawlog.c:38,28'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:38,31'
              BranchSideFuncs:
                - iostream_rawlog_write
                - iostream_rawlog_write
            - BranchSide:      'ostream-rawlog.c:38,2'
              BranchSideFuncs:
                - iostream_rawlog_write
                - iostream_rawlog_write
        - Branch String:   'ostream-rawlog.c:38,2'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:39,7'
              BranchSideFuncs:
                - iostream_rawlog_write
                - iostream_rawlog_write
            - BranchSide:      'ostream-rawlog.c:50,28'
              BranchSideFuncs: []
        - Branch String:   'ostream-rawlog.c:39,7'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:40,27'
              BranchSideFuncs:
                - iostream_rawlog_write
                - iostream_rawlog_write
            - BranchSide:      'ostream-rawlog.c:44,27'
              BranchSideFuncs:
                - iostream_rawlog_write
      Callsites:
        - Src:             'ostream-rawlog.c:33,13'
          Dst:             o_stream_sendv
        - Src:             'ostream-rawlog.c:34,3'
          Dst:             o_stream_copy_error_from_parent
        - Src:             'ostream-rawlog.c:40,4'
          Dst:             iostream_rawlog_write
        - Src:             'ostream-rawlog.c:44,4'
          Dst:             iostream_rawlog_write
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    o_stream_create_rawlog_from_stream
      functionSourceFile: '/src/dovecot/src/lib/ostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - output
        - rawlog_output
        - flags
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - iostream_rawlog_init
        - malloc_multiply_check
        - o_stream_create
        - o_stream_get_fd
        - p_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-rawlog.c:90,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-rawlog.c:90,12'
          Dst:             p_malloc
        - Src:             'ostream-rawlog.c:96,2'
          Dst:             iostream_rawlog_init
        - Src:             'ostream-rawlog.c:98,11'
          Dst:             o_stream_get_fd
        - Src:             'ostream-rawlog.c:97,9'
          Dst:             o_stream_create
    - functionName:    o_stream_create_rawlog
      functionSourceFile: '/src/dovecot/src/lib/ostream-rawlog.c'
      linkageType:     externalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - output
        - rawlog_path
        - rawlog_fd
        - flags
      BBCount:         14
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - o_stream_create_fd
        - o_stream_create_fd_autoclose
        - o_stream_create_rawlog_from_stream
        - o_stream_set_name
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ostream-rawlog.c:71,2'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:71,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-rawlog.c:72,2'
              BranchSideFuncs:
                - o_stream_create_fd
                - t_strdup_printf
                - o_stream_set_name
                - o_stream_create_rawlog_from_stream
                - o_stream_create_fd_autoclose
                - i_panic
        - Branch String:   'ostream-rawlog.c:72,2'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:72,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-rawlog.c:74,18'
              BranchSideFuncs:
                - o_stream_create_fd
                - t_strdup_printf
                - o_stream_set_name
                - o_stream_create_rawlog_from_stream
                - o_stream_create_fd_autoclose
        - Branch String:   'ostream-rawlog.c:74,18'
          Branch Sides:
            - BranchSide:      'ostream-rawlog.c:75,3'
              BranchSideFuncs:
                - o_stream_create_fd_autoclose
                - t_strdup_printf
                - o_stream_set_name
                - o_stream_create_rawlog_from_stream
            - BranchSide:      'ostream-rawlog.c:76,22'
              BranchSideFuncs:
                - o_stream_create_fd
                - t_strdup_printf
                - o_stream_set_name
                - o_stream_create_rawlog_from_stream
      Callsites:
        - Src:             'ostream-rawlog.c:71,2'
          Dst:             i_panic
        - Src:             'ostream-rawlog.c:72,2'
          Dst:             i_panic
        - Src:             'ostream-rawlog.c:75,3'
          Dst:             o_stream_create_fd_autoclose
        - Src:             'ostream-rawlog.c:76,3'
          Dst:             o_stream_create_fd
        - Src:             'ostream-rawlog.c:79,6'
          Dst:             t_strdup_printf
        - Src:             'ostream-rawlog.c:78,2'
          Dst:             o_stream_set_name
        - Src:             'ostream-rawlog.c:80,9'
          Dst:             o_stream_create_rawlog_from_stream
    - functionName:    o_stream_unix_write_fd
      functionSourceFile: '/src/dovecot/src/lib/ostream-unix.c'
      linkageType:     externalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - output
        - fd
      BBCount:         10
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ostream-unix.c:87,2'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:87,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-unix.c:89,6'
              BranchSideFuncs: []
        - Branch String:   'ostream-unix.c:89,6'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:90,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-unix.c:91,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-unix.c:87,2'
          Dst:             i_panic
    - functionName:    o_stream_unix_writev
      functionSourceFile: '/src/dovecot/src/lib/ostream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - fstream
        - iov
        - iov_count
        - error_r
      BBCount:         27
      ICount:          193
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - fd_send
        - i_panic
        - o_stream_file_writev
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-unix.c:29,6'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:31,31'
              BranchSideFuncs:
                - o_stream_file_writev
            - BranchSide:      'ostream-unix.c:35,6'
              BranchSideFuncs:
                - fd_send
                - o_stream_file_writev
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-unix.c:35,6'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:36,3'
              BranchSideFuncs: []
            - BranchSide:      'ostream-unix.c:37,2'
              BranchSideFuncs:
                - fd_send
                - o_stream_file_writev
                - __errno_location
                - __errno_location
                - t_strdup_printf
                - i_panic
        - Branch String:   'ostream-unix.c:37,2'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:37,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-unix.c:38,16'
              BranchSideFuncs:
                - fd_send
                - o_stream_file_writev
                - __errno_location
                - __errno_location
                - t_strdup_printf
        - Branch String:   'ostream-unix.c:40,6'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:41,14'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'ostream-unix.c:46,9'
              BranchSideFuncs:
                - o_stream_file_writev
                - __errno_location
                - __errno_location
        - Branch String:   'ostream-unix.c:51,28'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:51,31'
              BranchSideFuncs: []
            - BranchSide:      'ostream-unix.c:53,10'
              BranchSideFuncs: []
        - Branch String:   'ostream-unix.c:51,6'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:53,10'
              BranchSideFuncs: []
            - BranchSide:      'ostream-unix.c:57,29'
              BranchSideFuncs:
                - o_stream_file_writev
                - __errno_location
                - __errno_location
        - Branch String:   'ostream-unix.c:58,6'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:59,12'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
            - BranchSide:      'ostream-unix.c:60,10'
              BranchSideFuncs: []
        - Branch String:   'ostream-unix.c:59,28'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:59,57'
              BranchSideFuncs: []
            - BranchSide:      'ostream-unix.c:59,31'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'ostream-unix.c:59,12'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:59,57'
              BranchSideFuncs: []
            - BranchSide:      'ostream-unix.c:59,64'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ostream-unix.c:31,10'
          Dst:             o_stream_file_writev
        - Src:             'ostream-unix.c:37,2'
          Dst:             i_panic
        - Src:             'ostream-unix.c:38,8'
          Dst:             fd_send
        - Src:             'ostream-unix.c:41,14'
          Dst:             t_strdup_printf
        - Src:             'ostream-unix.c:57,8'
          Dst:             o_stream_file_writev
        - Src:             'ostream-unix.c:59,12'
          Dst:             __errno_location
        - Src:             'ostream-unix.c:59,31'
          Dst:             __errno_location
    - functionName:    o_stream_unix_close
      functionSourceFile: '/src/dovecot/src/lib/ostream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - stream
        - close_parent
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - o_stream_file_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ostream-unix.c:16,2'
          Dst:             o_stream_file_close
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    o_stream_create_unix
      functionSourceFile: '/src/dovecot/src/lib/ostream-unix.c'
      linkageType:     externalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - max_buffer_size
      BBCount:         7
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - o_stream_create_file_common
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ostream-unix.c:69,2'
          Branch Sides:
            - BranchSide:      'ostream-unix.c:69,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ostream-unix.c:69,2'
              BranchSideFuncs:
                - malloc_multiply_check.9062
                - p_malloc.9064
                - o_stream_create_file_common
      Callsites:
        - Src:             'ostream-unix.c:69,2'
          Dst:             i_panic
        - Src:             'ostream-unix.c:71,12'
          Dst:             malloc_multiply_check
        - Src:             'ostream-unix.c:71,12'
          Dst:             p_malloc
        - Src:             'ostream-unix.c:73,11'
          Dst:             o_stream_create_file_common
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   './str.h:90,6'
          Branch Sides:
            - BranchSide:      './str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      './str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             './str.h:90,6'
          Dst:             str_len
        - Src:             './str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    t_binary_abspath
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - binpath
        - error_r
      BBCount:         18
      ICount:          130
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - access
        - getenv
        - str_append
        - str_append_c
        - str_c
        - str_truncate
        - strchr
        - t_abspath
        - t_str_new
        - t_strdup_printf
        - t_strsplit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'path-util.c:366,6'
          Branch Sides:
            - BranchSide:      'path-util.c:368,3'
              BranchSideFuncs: []
            - BranchSide:      'path-util.c:369,21'
              BranchSideFuncs:
                - strchr
                - getenv
                - t_str_new
                - t_strsplit
                - str_append.9113
                - str_append_c.9112
                - str_append.9113
                - str_c
                - access
                - str_truncate.9111
                - str_c
                - t_abspath
                - t_strdup_printf
        - Branch String:   'path-util.c:369,13'
          Branch Sides:
            - BranchSide:      'path-util.c:372,18'
              BranchSideFuncs:
                - t_abspath
                - t_strdup_printf
            - BranchSide:      'path-util.c:378,25'
              BranchSideFuncs:
                - getenv
                - t_str_new
                - t_strsplit
                - str_append.9113
                - str_append_c.9112
                - str_append.9113
                - str_c
                - access
                - str_truncate.9111
                - str_c
        - Branch String:   'path-util.c:372,7'
          Branch Sides:
            - BranchSide:      'path-util.c:374,11'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'path-util.c:377,3'
              BranchSideFuncs: []
        - Branch String:   'path-util.c:378,13'
          Branch Sides:
            - BranchSide:      'path-util.c:380,10'
              BranchSideFuncs:
                - t_str_new
                - t_strsplit
                - str_append.9113
                - str_append_c.9112
                - str_append.9113
                - str_c
                - access
                - str_truncate.9111
                - str_c
            - BranchSide:      'path-util.c:395,4'
              BranchSideFuncs: []
        - Branch String:   'path-util.c:382,3'
          Branch Sides:
            - BranchSide:      'path-util.c:383,15'
              BranchSideFuncs:
                - str_append.9113
                - str_append_c.9112
                - str_append.9113
                - str_c
                - access
                - str_truncate.9111
                - str_c
            - BranchSide:      'path-util.c:392,4'
              BranchSideFuncs: []
        - Branch String:   'path-util.c:386,8'
          Branch Sides:
            - BranchSide:      'path-util.c:387,22'
              BranchSideFuncs:
                - str_c
            - BranchSide:      'path-util.c:390,17'
              BranchSideFuncs:
                - str_truncate.9111
                - str_append.9113
                - str_append_c.9112
                - str_append.9113
                - str_c
                - access
                - str_c
      Callsites:
        - Src:             'path-util.c:369,13'
          Dst:             strchr
        - Src:             'path-util.c:372,7'
          Dst:             t_abspath
        - Src:             'path-util.c:373,15'
          Dst:             t_strdup_printf
        - Src:             'path-util.c:378,25'
          Dst:             getenv
        - Src:             'path-util.c:380,10'
          Dst:             t_str_new
        - Src:             'path-util.c:381,11'
          Dst:             t_strsplit
        - Src:             'path-util.c:383,4'
          Dst:             str_append
        - Src:             'path-util.c:384,4'
          Dst:             str_append_c
        - Src:             'path-util.c:385,4'
          Dst:             str_append
        - Src:             'path-util.c:386,15'
          Dst:             str_c
        - Src:             'path-util.c:386,8'
          Dst:             access
        - Src:             'path-util.c:387,16'
          Dst:             str_c
        - Src:             'path-util.c:390,4'
          Dst:             str_truncate
    - functionName:    t_abspath
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - abspath_r
        - error_r
      BBCount:         20
      ICount:          111
      EdgeCount:       22
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - t_get_working_dir
        - t_strconcat
      functionUses:    1
      BranchProfiles:
        - Branch String:   'path-util.c:292,2'
          Branch Sides:
            - BranchSide:      'path-util.c:292,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:293,2'
              BranchSideFuncs:
                - t_get_working_dir
                - t_strconcat
                - t_strconcat
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:293,2'
          Branch Sides:
            - BranchSide:      'path-util.c:293,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:294,2'
              BranchSideFuncs:
                - t_get_working_dir
                - t_strconcat
                - t_strconcat
                - i_panic
        - Branch String:   'path-util.c:294,2'
          Branch Sides:
            - BranchSide:      'path-util.c:294,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:296,7'
              BranchSideFuncs:
                - t_get_working_dir
                - t_strconcat
                - t_strconcat
        - Branch String:   'path-util.c:296,6'
          Branch Sides:
            - BranchSide:      'path-util.c:297,16'
              BranchSideFuncs: []
            - BranchSide:      'path-util.c:302,6'
              BranchSideFuncs:
                - t_get_working_dir
                - t_strconcat
                - t_strconcat
        - Branch String:   'path-util.c:302,6'
          Branch Sides:
            - BranchSide:      'path-util.c:304,12'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'path-util.c:307,27'
              BranchSideFuncs:
                - t_strconcat
      Callsites:
        - Src:             'path-util.c:292,2'
          Dst:             i_panic
        - Src:             'path-util.c:293,2'
          Dst:             i_panic
        - Src:             'path-util.c:294,2'
          Dst:             i_panic
        - Src:             'path-util.c:302,6'
          Dst:             t_get_working_dir
        - Src:             'path-util.c:303,14'
          Dst:             t_strconcat
        - Src:             'path-util.c:307,15'
          Dst:             t_strconcat
    - functionName:    access
      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:    t_get_working_dir
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dir_r
        - error_r
      BBCount:         14
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - strlen
        - t_buffer_alloc
        - t_getcwd_noalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'path-util.c:326,2'
          Branch Sides:
            - BranchSide:      'path-util.c:326,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:327,2'
              BranchSideFuncs:
                - t_getcwd_noalloc
                - strlen
                - t_buffer_alloc
                - i_panic
        - Branch String:   'path-util.c:327,2'
          Branch Sides:
            - BranchSide:      'path-util.c:327,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:328,35'
              BranchSideFuncs:
                - t_getcwd_noalloc
                - strlen
                - t_buffer_alloc
        - Branch String:   'path-util.c:328,6'
          Branch Sides:
            - BranchSide:      'path-util.c:329,3'
              BranchSideFuncs: []
            - BranchSide:      'path-util.c:331,24'
              BranchSideFuncs:
                - strlen
                - t_buffer_alloc
      Callsites:
        - Src:             'path-util.c:326,2'
          Dst:             i_panic
        - Src:             'path-util.c:327,2'
          Dst:             i_panic
        - Src:             'path-util.c:328,6'
          Dst:             t_getcwd_noalloc
        - Src:             'path-util.c:331,17'
          Dst:             strlen
        - Src:             'path-util.c:331,2'
          Dst:             t_buffer_alloc
    - functionName:    t_getcwd_noalloc
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dir_r
        - asize_r
        - error_r
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - getcwd
        - nearest_power
        - t_buffer_get
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'path-util.c:22,2'
          Branch Sides:
            - BranchSide:      'path-util.c:23,7'
              BranchSideFuncs:
                - __errno_location
                - nearest_power
                - t_buffer_get
                - getcwd
                - t_strdup_printf
            - BranchSide:      'path-util.c:30,6'
              BranchSideFuncs: []
        - Branch String:   'path-util.c:23,7'
          Branch Sides:
            - BranchSide:      'path-util.c:24,15'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'path-util.c:27,25'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_get
                - getcwd
                - __errno_location
                - t_strdup_printf
        - Branch String:   'path-util.c:30,6'
          Branch Sides:
            - BranchSide:      'path-util.c:31,14'
              BranchSideFuncs: []
            - BranchSide:      'path-util.c:32,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'path-util.c:21,8'
          Dst:             t_buffer_get
        - Src:             'path-util.c:22,9'
          Dst:             getcwd
        - Src:             'path-util.c:23,7'
          Dst:             __errno_location
        - Src:             'path-util.c:24,15'
          Dst:             t_strdup_printf
        - Src:             'path-util.c:27,11'
          Dst:             nearest_power
        - Src:             'path-util.c:28,9'
          Dst:             t_buffer_get
    - functionName:    getcwd
      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:    t_readlink
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - dest_r
        - error_r
      BBCount:         13
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - nearest_power
        - readlink
        - t_buffer_alloc
        - t_buffer_get
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'path-util.c:338,2'
          Branch Sides:
            - BranchSide:      'path-util.c:338,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:343,9'
              BranchSideFuncs:
                - t_buffer_get
                - readlink
                - t_buffer_alloc
                - t_strdup_printf
                - nearest_power
                - t_buffer_get
        - Branch String:   'path-util.c:346,2'
          Branch Sides:
            - BranchSide:      'path-util.c:347,24'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_get
                - readlink
                - t_buffer_alloc
                - t_strdup_printf
            - BranchSide:      'path-util.c:350,6'
              BranchSideFuncs:
                - t_buffer_alloc
                - t_strdup_printf
        - Branch String:   'path-util.c:350,6'
          Branch Sides:
            - BranchSide:      'path-util.c:351,14'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'path-util.c:355,2'
              BranchSideFuncs:
                - t_buffer_alloc
      Callsites:
        - Src:             'path-util.c:338,2'
          Dst:             i_panic
        - Src:             'path-util.c:345,9'
          Dst:             t_buffer_get
        - Src:             'path-util.c:346,16'
          Dst:             readlink
        - Src:             'path-util.c:347,10'
          Dst:             nearest_power
        - Src:             'path-util.c:348,10'
          Dst:             t_buffer_get
        - Src:             'path-util.c:351,14'
          Dst:             t_strdup_printf
        - Src:             'path-util.c:356,2'
          Dst:             t_buffer_alloc
    - functionName:    readlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      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:    t_abspath_to
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - root
      BBCount:         14
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - t_strconcat
      functionUses:    0
      BranchProfiles:
        - Branch String:   'path-util.c:313,2'
          Branch Sides:
            - BranchSide:      'path-util.c:313,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:314,2'
              BranchSideFuncs:
                - t_strconcat
                - i_panic
        - Branch String:   'path-util.c:314,2'
          Branch Sides:
            - BranchSide:      'path-util.c:314,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:316,7'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'path-util.c:316,6'
          Branch Sides:
            - BranchSide:      'path-util.c:317,10'
              BranchSideFuncs: []
            - BranchSide:      'path-util.c:319,21'
              BranchSideFuncs:
                - t_strconcat
      Callsites:
        - Src:             'path-util.c:313,2'
          Dst:             i_panic
        - Src:             'path-util.c:314,2'
          Dst:             i_panic
        - Src:             'path-util.c:319,9'
          Dst:             t_strconcat
    - functionName:    t_realpath_to
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - root
        - npath_r
        - error_r
      BBCount:         18
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - t_realpath
        - t_strconcat
      functionUses:    0
      BranchProfiles:
        - Branch String:   'path-util.c:280,2'
          Branch Sides:
            - BranchSide:      'path-util.c:280,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:281,2'
              BranchSideFuncs:
                - t_strconcat
                - t_realpath
                - t_realpath
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:281,2'
          Branch Sides:
            - BranchSide:      'path-util.c:281,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:282,2'
              BranchSideFuncs:
                - t_strconcat
                - t_realpath
                - t_realpath
                - i_panic
        - Branch String:   'path-util.c:282,2'
          Branch Sides:
            - BranchSide:      'path-util.c:282,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:284,7'
              BranchSideFuncs:
                - t_strconcat
                - t_realpath
                - t_realpath
        - Branch String:   'path-util.c:284,6'
          Branch Sides:
            - BranchSide:      'path-util.c:285,21'
              BranchSideFuncs:
                - t_realpath
            - BranchSide:      'path-util.c:287,32'
              BranchSideFuncs:
                - t_strconcat
                - t_realpath
      Callsites:
        - Src:             'path-util.c:280,2'
          Dst:             i_panic
        - Src:             'path-util.c:281,2'
          Dst:             i_panic
        - Src:             'path-util.c:282,2'
          Dst:             i_panic
        - Src:             'path-util.c:285,10'
          Dst:             t_realpath
        - Src:             'path-util.c:287,20'
          Dst:             t_strconcat
        - Src:             'path-util.c:287,9'
          Dst:             t_realpath
    - functionName:    t_realpath
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - npath_r
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - path_normalize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'path-util.c:274,9'
          Dst:             path_normalize
    - functionName:    path_normalize
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - resolve_links
        - npath_r
        - error_r
      BBCount:         210
      ICount:          1241
      EdgeCount:       248
      CyclomaticComplexity: 40
      functionsReached:
        - __errno_location
        - i_memcpy
        - i_panic
        - lstat
        - nearest_power
        - readlink
        - strlen
        - t_buffer_alloc
        - t_buffer_get
        - t_buffer_reget
        - t_getcwd_noalloc
        - t_strdup_printf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'path-util.c:45,2'
          Branch Sides:
            - BranchSide:      'path-util.c:45,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:46,2'
              BranchSideFuncs:
                - t_buffer_get
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - t_getcwd_noalloc
                - strlen
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:46,2'
          Branch Sides:
            - BranchSide:      'path-util.c:46,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:47,2'
              BranchSideFuncs:
                - t_buffer_get
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - t_getcwd_noalloc
                - strlen
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:47,2'
          Branch Sides:
            - BranchSide:      'path-util.c:47,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:49,6'
              BranchSideFuncs:
                - t_buffer_get
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - t_getcwd_noalloc
                - strlen
                - i_panic
        - Branch String:   'path-util.c:49,6'
          Branch Sides:
            - BranchSide:      'path-util.c:51,40'
              BranchSideFuncs:
                - t_getcwd_noalloc
                - strlen
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:57,9'
              BranchSideFuncs:
                - t_buffer_get
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:51,7'
          Branch Sides:
            - BranchSide:      'path-util.c:52,4'
              BranchSideFuncs: []
            - BranchSide:      'path-util.c:53,15'
              BranchSideFuncs:
                - strlen
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:54,3'
          Branch Sides:
            - BranchSide:      'path-util.c:54,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:55,2'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:64,2'
          Branch Sides:
            - BranchSide:      'path-util.c:70,3'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:241,2'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:70,3'
          Branch Sides:
            - BranchSide:      'path-util.c:71,5'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:74,17'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:74,36'
          Branch Sides:
            - BranchSide:      'path-util.c:74,40'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:74,3'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:74,3'
          Branch Sides:
            - BranchSide:      'path-util.c:74,61'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:76,7'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:76,7'
          Branch Sides:
            - BranchSide:      'path-util.c:77,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:78,12'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:79,19'
          Branch Sides:
            - BranchSide:      'path-util.c:79,22'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:81,14'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:79,7'
          Branch Sides:
            - BranchSide:      'path-util.c:81,3'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'path-util.c:81,14'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:81,26'
          Branch Sides:
            - BranchSide:      'path-util.c:81,29'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:92,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
        - Branch String:   'path-util.c:81,41'
          Branch Sides:
            - BranchSide:      'path-util.c:81,44'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:92,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
        - Branch String:   'path-util.c:81,14'
          Branch Sides:
            - BranchSide:      'path-util.c:84,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
            - BranchSide:      'path-util.c:92,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
        - Branch String:   'path-util.c:84,4'
          Branch Sides:
            - BranchSide:      'path-util.c:84,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:85,9'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
        - Branch String:   'path-util.c:85,8'
          Branch Sides:
            - BranchSide:      'path-util.c:86,11'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'path-util.c:90,3'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
        - Branch String:   'path-util.c:86,9'
          Branch Sides:
            - BranchSide:      'path-util.c:87,15'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'path-util.c:88,5'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
        - Branch String:   'path-util.c:88,5'
          Branch Sides:
            - BranchSide:      'path-util.c:88,44'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'path-util.c:89,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
        - Branch String:   'path-util.c:92,4'
          Branch Sides:
            - BranchSide:      'path-util.c:92,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:93,18'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
        - Branch String:   'path-util.c:93,8'
          Branch Sides:
            - BranchSide:      'path-util.c:94,30'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:101,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:101,4'
          Branch Sides:
            - BranchSide:      'path-util.c:101,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:102,10'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:102,8'
          Branch Sides:
            - BranchSide:      'path-util.c:103,5'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:108,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:103,5'
          Branch Sides:
            - BranchSide:      'path-util.c:103,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:104,16'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:108,4'
          Branch Sides:
            - BranchSide:      'path-util.c:108,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:109,4'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
        - Branch String:   'path-util.c:109,4'
          Branch Sides:
            - BranchSide:      'path-util.c:109,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:110,12'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
        - Branch String:   'path-util.c:114,7'
          Branch Sides:
            - BranchSide:      'path-util.c:116,5'
              BranchSideFuncs:
                - lstat
                - t_buffer_alloc
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
            - BranchSide:      'path-util.c:238,7'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:117,8'
          Branch Sides:
            - BranchSide:      'path-util.c:118,16'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'path-util.c:122,8'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
        - Branch String:   'path-util.c:122,8'
          Branch Sides:
            - BranchSide:      'path-util.c:125,12'
              BranchSideFuncs:
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
            - BranchSide:      'path-util.c:230,16'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - __errno_location
                - t_strdup_printf
        - Branch String:   'path-util.c:126,21'
          Branch Sides:
            - BranchSide:      'path-util.c:126,12'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
            - BranchSide:      'path-util.c:126,43'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
        - Branch String:   'path-util.c:130,9'
          Branch Sides:
            - BranchSide:      'path-util.c:131,6'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'path-util.c:142,14'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
        - Branch String:   'path-util.c:143,5'
          Branch Sides:
            - BranchSide:      'path-util.c:143,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:144,19'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
        - Branch String:   'path-util.c:144,9'
          Branch Sides:
            - BranchSide:      'path-util.c:145,31'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:152,9'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:152,9'
          Branch Sides:
            - BranchSide:      'path-util.c:154,6'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:160,5'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:154,6'
          Branch Sides:
            - BranchSide:      'path-util.c:154,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:155,6'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:155,6'
          Branch Sides:
            - BranchSide:      'path-util.c:155,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:156,14'
              BranchSideFuncs:
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:163,6'
          Branch Sides:
            - BranchSide:      'path-util.c:163,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:164,6'
              BranchSideFuncs:
                - readlink
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
        - Branch String:   'path-util.c:164,6'
          Branch Sides:
            - BranchSide:      'path-util.c:164,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:167,24'
              BranchSideFuncs:
                - readlink
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
        - Branch String:   'path-util.c:167,10'
          Branch Sides:
            - BranchSide:      'path-util.c:168,18'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'path-util.c:171,18'
              BranchSideFuncs:
                - readlink
                - t_strdup_printf
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:171,10'
          Branch Sides:
            - BranchSide:      'path-util.c:173,7'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:180,19'
              BranchSideFuncs:
                - readlink
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
        - Branch String:   'path-util.c:180,10'
          Branch Sides:
            - BranchSide:      'path-util.c:181,7'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'path-util.c:189,15'
              BranchSideFuncs:
                - readlink
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
        - Branch String:   'path-util.c:190,6'
          Branch Sides:
            - BranchSide:      'path-util.c:190,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:191,20'
              BranchSideFuncs:
                - readlink
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
        - Branch String:   'path-util.c:191,66'
          Branch Sides:
            - BranchSide:      'path-util.c:192,10'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - readlink
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:193,32'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - readlink
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:191,10'
          Branch Sides:
            - BranchSide:      'path-util.c:160,5'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - readlink
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:193,32'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - readlink
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:202,5'
          Branch Sides:
            - BranchSide:      'path-util.c:202,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:203,9'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:203,9'
          Branch Sides:
            - BranchSide:      'path-util.c:204,6'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:209,6'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:204,6'
          Branch Sides:
            - BranchSide:      'path-util.c:204,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:205,6'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:205,6'
          Branch Sides:
            - BranchSide:      'path-util.c:205,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:206,6'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:206,6'
          Branch Sides:
            - BranchSide:      'path-util.c:206,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:207,6'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:209,6'
          Branch Sides:
            - BranchSide:      'path-util.c:209,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:210,6'
              BranchSideFuncs:
                - i_memcpy.9106
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:217,9'
          Branch Sides:
            - BranchSide:      'path-util.c:219,18'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:222,6'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:222,6'
          Branch Sides:
            - BranchSide:      'path-util.c:222,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:223,11'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:224,11'
          Branch Sides:
            - BranchSide:      'path-util.c:225,17'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:226,7'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:226,7'
          Branch Sides:
            - BranchSide:      'path-util.c:226,46'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
            - BranchSide:      'path-util.c:227,6'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
                - i_panic
                - lstat
                - __errno_location
                - t_strdup_printf
                - strlen
                - readlink
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_memcpy.9106
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - __errno_location
                - t_strdup_printf
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - nearest_power
                - t_buffer_reget
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:241,2'
          Branch Sides:
            - BranchSide:      'path-util.c:241,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:242,2'
              BranchSideFuncs:
                - t_buffer_alloc
                - i_panic
        - Branch String:   'path-util.c:242,2'
          Branch Sides:
            - BranchSide:      'path-util.c:242,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:245,7'
              BranchSideFuncs:
                - t_buffer_alloc
        - Branch String:   'path-util.c:245,30'
          Branch Sides:
            - BranchSide:      'path-util.c:245,35'
              BranchSideFuncs:
                - t_buffer_alloc
            - BranchSide:      'path-util.c:247,3'
              BranchSideFuncs:
                - t_buffer_alloc
        - Branch String:   'path-util.c:245,6'
          Branch Sides:
            - BranchSide:      'path-util.c:246,12'
              BranchSideFuncs:
                - t_buffer_alloc
            - BranchSide:      'path-util.c:247,3'
              BranchSideFuncs:
                - t_buffer_alloc
      Callsites:
        - Src:             'path-util.c:45,2'
          Dst:             i_panic
        - Src:             'path-util.c:46,2'
          Dst:             i_panic
        - Src:             'path-util.c:47,2'
          Dst:             i_panic
        - Src:             'path-util.c:51,7'
          Dst:             t_getcwd_noalloc
        - Src:             'path-util.c:53,23'
          Dst:             strlen
        - Src:             'path-util.c:54,3'
          Dst:             i_panic
        - Src:             'path-util.c:58,11'
          Dst:             t_buffer_get
        - Src:             'path-util.c:84,4'
          Dst:             i_panic
        - Src:             'path-util.c:92,4'
          Dst:             i_panic
        - Src:             'path-util.c:95,13'
          Dst:             nearest_power
        - Src:             'path-util.c:96,13'
          Dst:             t_buffer_reget
        - Src:             'path-util.c:101,4'
          Dst:             i_panic
        - Src:             'path-util.c:103,5'
          Dst:             i_panic
        - Src:             'path-util.c:108,4'
          Dst:             i_panic
        - Src:             'path-util.c:109,4'
          Dst:             i_panic
        - Src:             'path-util.c:117,8'
          Dst:             lstat
        - Src:             'path-util.c:118,16'
          Dst:             t_strdup_printf
        - Src:             'path-util.c:125,32'
          Dst:             strlen
        - Src:             'path-util.c:131,6'
          Dst:             __errno_location
        - Src:             'path-util.c:143,5'
          Dst:             i_panic
        - Src:             'path-util.c:146,14'
          Dst:             nearest_power
        - Src:             'path-util.c:148,14'
          Dst:             t_buffer_reget
        - Src:             'path-util.c:154,6'
          Dst:             i_panic
        - Src:             'path-util.c:155,6'
          Dst:             i_panic
        - Src:             'path-util.c:163,6'
          Dst:             i_panic
        - Src:             'path-util.c:164,6'
          Dst:             i_panic
        - Src:             'path-util.c:167,15'
          Dst:             readlink
        - Src:             'path-util.c:168,18'
          Dst:             t_strdup_printf
        - Src:             'path-util.c:181,7'
          Dst:             __errno_location
        - Src:             'path-util.c:190,6'
          Dst:             i_panic
        - Src:             'path-util.c:194,15'
          Dst:             nearest_power
        - Src:             'path-util.c:196,15'
          Dst:             t_buffer_reget
        - Src:             'path-util.c:202,5'
          Dst:             i_panic
        - Src:             'path-util.c:204,6'
          Dst:             i_panic
        - Src:             'path-util.c:205,6'
          Dst:             i_panic
        - Src:             'path-util.c:206,6'
          Dst:             i_panic
        - Src:             'path-util.c:207,6'
          Dst:             i_memcpy
        - Src:             'path-util.c:209,6'
          Dst:             i_panic
        - Src:             'path-util.c:210,6'
          Dst:             i_memcpy
        - Src:             'path-util.c:222,6'
          Dst:             i_panic
        - Src:             'path-util.c:232,5'
          Dst:             __errno_location
        - Src:             'path-util.c:233,16'
          Dst:             t_strdup_printf
        - Src:             'path-util.c:241,2'
          Dst:             i_panic
        - Src:             'path-util.c:242,2'
          Dst:             i_panic
        - Src:             'path-util.c:249,2'
          Dst:             t_buffer_alloc
    - functionName:    lstat
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    t_normpath_to
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - root
        - npath_r
        - error_r
      BBCount:         18
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - t_normpath
        - t_strconcat
      functionUses:    0
      BranchProfiles:
        - Branch String:   'path-util.c:262,2'
          Branch Sides:
            - BranchSide:      'path-util.c:262,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:263,2'
              BranchSideFuncs:
                - t_strconcat
                - t_normpath
                - t_normpath
                - i_panic
                - i_panic
        - Branch String:   'path-util.c:263,2'
          Branch Sides:
            - BranchSide:      'path-util.c:263,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:264,2'
              BranchSideFuncs:
                - t_strconcat
                - t_normpath
                - t_normpath
                - i_panic
        - Branch String:   'path-util.c:264,2'
          Branch Sides:
            - BranchSide:      'path-util.c:264,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'path-util.c:266,7'
              BranchSideFuncs:
                - t_strconcat
                - t_normpath
                - t_normpath
        - Branch String:   'path-util.c:266,6'
          Branch Sides:
            - BranchSide:      'path-util.c:267,21'
              BranchSideFuncs:
                - t_normpath
            - BranchSide:      'path-util.c:269,32'
              BranchSideFuncs:
                - t_strconcat
                - t_normpath
      Callsites:
        - Src:             'path-util.c:262,2'
          Dst:             i_panic
        - Src:             'path-util.c:263,2'
          Dst:             i_panic
        - Src:             'path-util.c:264,2'
          Dst:             i_panic
        - Src:             'path-util.c:267,10'
          Dst:             t_normpath
        - Src:             'path-util.c:269,20'
          Dst:             t_strconcat
        - Src:             'path-util.c:269,9'
          Dst:             t_normpath
    - functionName:    t_normpath
      functionSourceFile: '/src/dovecot/src/lib/path-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - path
        - npath_r
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - path_normalize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'path-util.c:256,9'
          Dst:             path_normalize
    - functionName:    primes_closest
      functionSourceFile: '/src/dovecot/src/lib/primes.c'
      linkageType:     externalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - num
      BBCount:         8
      ICount:          48
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'primes.c:43,2'
          Branch Sides:
            - BranchSide:      'primes.c:44,8'
              BranchSideFuncs: []
            - BranchSide:      'primes.c:47,9'
              BranchSideFuncs: []
        - Branch String:   'primes.c:44,7'
          Branch Sides:
            - BranchSide:      'primes.c:45,18'
              BranchSideFuncs: []
            - BranchSide:      'primes.c:46,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    fix_format_real
      functionSourceFile: '/src/dovecot/src/lib/printf-format-fix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fmt
        - p
        - len_r
      BBCount:         14
      ICount:          143
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - i_panic
        - strerror
        - strlen
        - t_buffer_get
      functionUses:    1
      BranchProfiles:
        - Branch String:   'printf-format-fix.c:17,2'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:17,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'printf-format-fix.c:18,2'
              BranchSideFuncs:
                - __errno_location
                - strerror
                - strlen
                - strlen
                - t_buffer_get
                - i_panic
        - Branch String:   'printf-format-fix.c:18,2'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:18,2'
              BranchSideFuncs:
                - __errno_location
                - strerror
                - strlen
                - strlen
                - t_buffer_get
                - i_panic
            - BranchSide:      'printf-format-fix.c:18,2'
              BranchSideFuncs:
                - __errno_location
                - strerror
                - strlen
                - strlen
                - t_buffer_get
                - i_panic
        - Branch String:   'printf-format-fix.c:18,2'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:18,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'printf-format-fix.c:18,2'
              BranchSideFuncs:
                - __errno_location
                - strerror
                - strlen
                - strlen
                - t_buffer_get
      Callsites:
        - Src:             'printf-format-fix.c:17,2'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:18,2'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:20,20'
          Dst:             __errno_location
        - Src:             'printf-format-fix.c:20,11'
          Dst:             strerror
        - Src:             'printf-format-fix.c:26,9'
          Dst:             strlen
        - Src:             'printf-format-fix.c:27,9'
          Dst:             strlen
        - Src:             'printf-format-fix.c:30,8'
          Dst:             t_buffer_get
    - functionName:    verify_length
      functionSourceFile: '/src/dovecot/src/lib/printf-format-fix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - p
      BBCount:         19
      ICount:          100
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'printf-format-fix.c:41,6'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:44,4'
              BranchSideFuncs: []
            - BranchSide:      'printf-format-fix.c:45,15'
              BranchSideFuncs: []
        - Branch String:   'printf-format-fix.c:54,8'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:55,5'
              BranchSideFuncs: []
            - BranchSide:      'printf-format-fix.c:56,3'
              BranchSideFuncs: []
        - Branch String:   'printf-format-fix.c:56,23'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:56,28'
              BranchSideFuncs: []
            - BranchSide:      'printf-format-fix.c:56,3'
              BranchSideFuncs: []
        - Branch String:   'printf-format-fix.c:56,3'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:53,5'
              BranchSideFuncs: []
            - BranchSide:      'printf-format-fix.c:57,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    printf_format_fix_unsafe
      functionSourceFile: '/src/dovecot/src/lib/printf-format-fix.c'
      linkageType:     externalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - printf_format_fix_noalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'printf-format-fix.c:195,9'
          Dst:             printf_format_fix_noalloc
    - functionName:    printf_format_fix_noalloc
      functionSourceFile: '/src/dovecot/src/lib/printf-format-fix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
        - len_r
      BBCount:         54
      ICount:          329
      EdgeCount:       59
      CyclomaticComplexity: 7
      functionsReached:
        - fix_format_real
        - i_panic
        - strchr
        - strlen
        - verify_length
      functionUses:    3
      BranchProfiles:
        - Branch String:   'printf-format-fix.c:84,2'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:85,34'
              BranchSideFuncs:
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
            - BranchSide:      'printf-format-fix.c:165,6'
              BranchSideFuncs:
                - strlen
        - Branch String:   'printf-format-fix.c:88,7'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:91,5'
              BranchSideFuncs:
                - strchr
                - strlen
                - verify_length
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
            - BranchSide:      'printf-format-fix.c:98,8'
              BranchSideFuncs:
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
        - Branch String:   'printf-format-fix.c:99,21'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:99,3'
              BranchSideFuncs:
                - strchr
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:100,25'
              BranchSideFuncs:
                - strchr
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
        - Branch String:   'printf-format-fix.c:99,3'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:101,28'
              BranchSideFuncs:
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - strchr
                - i_panic
            - BranchSide:      'printf-format-fix.c:112,8'
              BranchSideFuncs:
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
        - Branch String:   'printf-format-fix.c:103,8'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:105,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'printf-format-fix.c:107,22'
              BranchSideFuncs:
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
        - Branch String:   'printf-format-fix.c:112,7'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:114,5'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
            - BranchSide:      'printf-format-fix.c:118,8'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
        - Branch String:   'printf-format-fix.c:118,7'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:119,5'
              BranchSideFuncs:
                - verify_length
                - i_panic
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:127,12'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'printf-format-fix.c:120,8'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:122,6'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:124,3'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'printf-format-fix.c:127,3'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:129,9'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:133,9'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:140,5'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:140,5'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:140,5'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:140,5'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:145,8'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'printf-format-fix.c:129,8'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:130,6'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:131,4'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'printf-format-fix.c:133,8'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:134,6'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:135,4'
              BranchSideFuncs:
                - strchr
                - strchr
                - strlen
                - verify_length
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'printf-format-fix.c:145,18'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:145,28'
              BranchSideFuncs:
                - i_panic
                - fix_format_real
                - strchr
                - strlen
                - verify_length
                - i_panic
                - strchr
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:146,13'
              BranchSideFuncs:
                - i_panic
                - fix_format_real
                - strchr
                - strlen
                - verify_length
                - i_panic
                - strchr
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'printf-format-fix.c:145,7'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:146,13'
              BranchSideFuncs:
                - i_panic
                - fix_format_real
                - strchr
                - strlen
                - verify_length
                - i_panic
                - strchr
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'printf-format-fix.c:162,4'
              BranchSideFuncs:
                - strchr
                - strlen
                - verify_length
                - i_panic
                - strchr
                - i_panic
                - fix_format_real
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
        - Branch String:   'printf-format-fix.c:146,4'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:148,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'printf-format-fix.c:150,9'
              BranchSideFuncs:
                - fix_format_real
                - strchr
                - strlen
                - verify_length
                - i_panic
                - strchr
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
                - i_panic
            - BranchSide:      'printf-format-fix.c:156,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'printf-format-fix.c:159,7'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'printf-format-fix.c:150,9'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:151,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'printf-format-fix.c:152,27'
              BranchSideFuncs:
                - fix_format_real
                - strchr
                - strlen
                - verify_length
                - i_panic
                - strchr
                - i_panic
                - i_panic
                - i_panic
                - i_panic
                - verify_length
                - i_panic
                - i_panic
                - strchr
        - Branch String:   'printf-format-fix.c:165,6'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:165,6'
              BranchSideFuncs:
                - strlen
            - BranchSide:      'printf-format-fix.c:166,12'
              BranchSideFuncs:
                - strlen
      Callsites:
        - Src:             'printf-format-fix.c:84,15'
          Dst:             strchr
        - Src:             'printf-format-fix.c:100,18'
          Dst:             strchr
        - Src:             'printf-format-fix.c:104,5'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:112,8'
          Dst:             verify_length
        - Src:             'printf-format-fix.c:113,4'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:120,9'
          Dst:             verify_length
        - Src:             'printf-format-fix.c:121,5'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:145,21'
          Dst:             strchr
        - Src:             'printf-format-fix.c:148,5'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:151,6'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:152,11'
          Dst:             fix_format_real
        - Src:             'printf-format-fix.c:155,5'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:158,5'
          Dst:             i_panic
        - Src:             'printf-format-fix.c:166,25'
          Dst:             strlen
    - functionName:    printf_format_fix
      functionSourceFile: '/src/dovecot/src/lib/printf-format-fix.c'
      linkageType:     externalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - printf_format_fix_noalloc
        - t_buffer_alloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'printf-format-fix.c:186,6'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:186,6'
              BranchSideFuncs:
                - t_buffer_alloc
            - BranchSide:      'printf-format-fix.c:187,18'
              BranchSideFuncs:
                - t_buffer_alloc
      Callsites:
        - Src:             'printf-format-fix.c:185,8'
          Dst:             printf_format_fix_noalloc
        - Src:             'printf-format-fix.c:187,3'
          Dst:             t_buffer_alloc
    - functionName:    printf_format_fix_get_len
      functionSourceFile: '/src/dovecot/src/lib/printf-format-fix.c'
      linkageType:     externalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
        - len_r
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - printf_format_fix_noalloc
        - t_buffer_alloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'printf-format-fix.c:175,6'
          Branch Sides:
            - BranchSide:      'printf-format-fix.c:175,6'
              BranchSideFuncs:
                - t_buffer_alloc
            - BranchSide:      'printf-format-fix.c:176,19'
              BranchSideFuncs:
                - t_buffer_alloc
      Callsites:
        - Src:             'printf-format-fix.c:174,8'
          Dst:             printf_format_fix_noalloc
        - Src:             'printf-format-fix.c:176,3'
          Dst:             t_buffer_alloc
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    process_title_deinit
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     externalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          30
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - env_get_environ_p
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'process-title.c:178,22'
          Branch Sides:
            - BranchSide:      'process-title.c:178,10'
              BranchSideFuncs:
                - env_get_environ_p
                - free
                - free
                - p_free_internal.9218
            - BranchSide:      'process-title.c:193,2'
              BranchSideFuncs:
                - env_get_environ_p
                - free
                - free
                - p_free_internal.9218
      Callsites:
        - Src:             'process-title.c:178,22'
          Dst:             env_get_environ_p
        - Src:             'process-title.c:193,2'
          Dst:             p_free_internal
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    process_title_get_counter
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     externalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_title_get
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     externalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    proctitle_hack_set
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - title
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'process-title.c:111,6'
          Branch Sides:
            - BranchSide:      'process-title.c:112,9'
              BranchSideFuncs:
                - i_memcpy.9211
            - BranchSide:      'process-title.c:114,2'
              BranchSideFuncs:
                - i_memcpy.9211
        - Branch String:   'process-title.c:118,6'
          Branch Sides:
            - BranchSide:      'process-title.c:119,10'
              BranchSideFuncs: []
            - BranchSide:      'process-title.c:122,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'process-title.c:108,15'
          Dst:             strlen
        - Src:             'process-title.c:114,2'
          Dst:             i_memcpy
    - functionName:    process_title_set
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     externalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - title
      BBCount:         15
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - i_strdup
        - p_free_internal
        - proctitle_hack_set
        - t_pop
        - t_push
        - t_strconcat
      functionUses:    2
      BranchProfiles:
        - Branch String:   'process-title.c:148,2'
          Branch Sides:
            - BranchSide:      'process-title.c:148,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'process-title.c:150,23'
              BranchSideFuncs:
                - p_free_internal.9218
                - i_strdup
                - t_push
                - t_strconcat
                - proctitle_hack_set
                - t_pop
                - i_panic
        - Branch String:   'process-title.c:161,4'
          Branch Sides:
            - BranchSide:      'process-title.c:161,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'process-title.c:161,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'process-title.c:148,2'
          Dst:             i_panic
        - Src:             'process-title.c:151,2'
          Dst:             p_free_internal
        - Src:             'process-title.c:152,26'
          Dst:             i_strdup
        - Src:             'process-title.c:159,2'
          Dst:             t_push
        - Src:             'process-title.c:160,22'
          Dst:             t_strconcat
        - Src:             'process-title.c:160,3'
          Dst:             proctitle_hack_set
        - Src:             'process-title.c:161,4'
          Dst:             t_pop
        - Src:             'process-title.c:161,4'
          Dst:             i_panic
    - functionName:    proctitle_hack_init
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - argv
        - env
      BBCount:         27
      ICount:          209
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'process-title.c:43,2'
          Branch Sides:
            - BranchSide:      'process-title.c:43,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'process-title.c:48,9'
              BranchSideFuncs:
                - strlen
                - strlen
                - strlen
        - Branch String:   'process-title.c:49,2'
          Branch Sides:
            - BranchSide:      'process-title.c:50,7'
              BranchSideFuncs:
                - strlen
                - strlen
            - BranchSide:      'process-title.c:53,6'
              BranchSideFuncs:
                - strlen
        - Branch String:   'process-title.c:50,7'
          Branch Sides:
            - BranchSide:      'process-title.c:51,11'
              BranchSideFuncs:
                - strlen
                - strlen
            - BranchSide:      'process-title.c:52,2'
              BranchSideFuncs:
                - strlen
                - strlen
        - Branch String:   'process-title.c:53,6'
          Branch Sides:
            - BranchSide:      'process-title.c:54,13'
              BranchSideFuncs: []
            - BranchSide:      'process-title.c:56,15'
              BranchSideFuncs:
                - strlen
        - Branch String:   'process-title.c:57,3'
          Branch Sides:
            - BranchSide:      'process-title.c:0,0'
              BranchSideFuncs:
                - strlen
            - BranchSide:      'process-title.c:58,8'
              BranchSideFuncs:
                - strlen
        - Branch String:   'process-title.c:58,8'
          Branch Sides:
            - BranchSide:      'process-title.c:59,12'
              BranchSideFuncs:
                - strlen
            - BranchSide:      'process-title.c:60,3'
              BranchSideFuncs:
                - strlen
        - Branch String:   'process-title.c:66,6'
          Branch Sides:
            - BranchSide:      'process-title.c:67,10'
              BranchSideFuncs: []
            - BranchSide:      'process-title.c:70,27'
              BranchSideFuncs: []
      Callsites:
        - Src:             'process-title.c:43,2'
          Dst:             i_panic
        - Src:             'process-title.c:48,19'
          Dst:             strlen
        - Src:             'process-title.c:51,21'
          Dst:             strlen
        - Src:             'process-title.c:59,21'
          Dst:             strlen
    - functionName:    argv_dup
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - old_argv
        - memblock_r
      BBCount:         17
      ICount:          166
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - i_fatal_status
        - i_memcpy
        - i_panic
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'process-title.c:82,2'
          Branch Sides:
            - BranchSide:      'process-title.c:83,26'
              BranchSideFuncs:
                - strlen
                - malloc
                - i_panic
                - strlen
                - i_memcpy.9211
                - i_fatal_status
            - BranchSide:      'process-title.c:84,36'
              BranchSideFuncs:
                - malloc
                - i_panic
                - strlen
                - i_memcpy.9211
                - i_fatal_status
        - Branch String:   'process-title.c:87,6'
          Branch Sides:
            - BranchSide:      'process-title.c:88,3'
              BranchSideFuncs:
                - i_fatal_status
            - BranchSide:      'process-title.c:89,16'
              BranchSideFuncs:
                - i_panic
                - strlen
                - i_memcpy.9211
        - Branch String:   'process-title.c:95,2'
          Branch Sides:
            - BranchSide:      'process-title.c:96,17'
              BranchSideFuncs:
                - strlen
                - i_memcpy.9211
                - i_panic
            - BranchSide:      'process-title.c:101,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'process-title.c:101,2'
          Branch Sides:
            - BranchSide:      'process-title.c:101,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'process-title.c:101,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'process-title.c:83,19'
          Dst:             strlen
        - Src:             'process-title.c:88,3'
          Dst:             i_fatal_status
        - Src:             'process-title.c:97,9'
          Dst:             strlen
        - Src:             'process-title.c:98,3'
          Dst:             i_memcpy
        - Src:             'process-title.c:101,2'
          Dst:             i_panic
    - functionName:    process_title_init
      functionSourceFile: '/src/dovecot/src/lib/process-title.c'
      linkageType:     externalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - argc
        - argv
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - argv_dup
        - env_get_environ_p
        - proctitle_hack_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'process-title.c:132,22'
          Dst:             env_get_environ_p
        - Src:             'process-title.c:136,10'
          Dst:             argv_dup
        - Src:             'process-title.c:137,15'
          Dst:             argv_dup
        - Src:             'process-title.c:138,2'
          Dst:             proctitle_hack_init
    - functionName:    heap_item_bubble_down
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - pq
        - idx
      BBCount:         15
      ICount:          121
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_get_modifiable_i
        - heap_items_swap
      functionUses:    1
      BranchProfiles:
        - Branch String:   'priorityq.c:92,2'
          Branch Sides:
            - BranchSide:      'priorityq.c:92,2'
              BranchSideFuncs:
                - heap_items_swap
            - BranchSide:      'priorityq.c:93,15'
              BranchSideFuncs:
                - heap_items_swap
        - Branch String:   'priorityq.c:94,26'
          Branch Sides:
            - BranchSide:      'priorityq.c:95,7'
              BranchSideFuncs:
                - heap_items_swap
            - BranchSide:      'priorityq.c:96,20'
              BranchSideFuncs:
                - heap_items_swap
        - Branch String:   'priorityq.c:94,7'
          Branch Sides:
            - BranchSide:      'priorityq.c:96,20'
              BranchSideFuncs:
                - heap_items_swap
            - BranchSide:      'priorityq.c:98,20'
              BranchSideFuncs:
                - heap_items_swap
        - Branch String:   'priorityq.c:100,7'
          Branch Sides:
            - BranchSide:      'priorityq.c:101,4'
              BranchSideFuncs: []
            - BranchSide:      'priorityq.c:104,19'
              BranchSideFuncs:
                - heap_items_swap
      Callsites:
        - Src:             'priorityq.c:91,10'
          Dst:             array_get_modifiable_i
        - Src:             'priorityq.c:104,3'
          Dst:             heap_items_swap
    - functionName:    array_get_modifiable_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
        - buffer_get_modifiable_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:304,13'
          Dst:             array_count_i
        - Src:             './array.h:305,9'
          Dst:             buffer_get_modifiable_data
    - functionName:    heap_items_swap
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - items
        - idx1
        - idx2
      BBCount:         11
      ICount:          111
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'priorityq.c:53,2'
          Branch Sides:
            - BranchSide:      'priorityq.c:53,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'priorityq.c:54,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'priorityq.c:54,2'
          Branch Sides:
            - BranchSide:      'priorityq.c:54,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'priorityq.c:54,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'priorityq.c:53,2'
          Dst:             i_panic
        - Src:             'priorityq.c:54,2'
          Dst:             i_panic
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_delete_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - count
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:244,2'
          Dst:             buffer_delete
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    priorityq_items
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pq
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - array_idx_i
      functionUses:    1
      BranchProfiles:
        - Branch String:   'priorityq.c:167,6'
          Branch Sides:
            - BranchSide:      'priorityq.c:168,3'
              BranchSideFuncs: []
            - BranchSide:      'priorityq.c:170,9'
              BranchSideFuncs:
                - array_idx_i.9291
      Callsites:
        - Src:             'priorityq.c:167,6'
          Dst:             array_count_i
        - Src:             'priorityq.c:170,9'
          Dst:             array_idx_i
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './array.h:275,2'
          Branch Sides:
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:275,2'
          Dst:             i_panic
    - functionName:    priorityq_pop
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pq
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - priorityq_peek
        - priorityq_remove_idx
      functionUses:    1
      BranchProfiles:
        - Branch String:   'priorityq.c:158,6'
          Branch Sides:
            - BranchSide:      'priorityq.c:158,6'
              BranchSideFuncs:
                - priorityq_remove_idx
            - BranchSide:      'priorityq.c:159,24'
              BranchSideFuncs:
                - priorityq_remove_idx
      Callsites:
        - Src:             'priorityq.c:157,9'
          Dst:             priorityq_peek
        - Src:             'priorityq.c:159,3'
          Dst:             priorityq_remove_idx
    - functionName:    priorityq_peek
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pq
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count_i
        - array_idx_i
      functionUses:    3
      BranchProfiles:
        - Branch String:   'priorityq.c:146,6'
          Branch Sides:
            - BranchSide:      'priorityq.c:147,3'
              BranchSideFuncs: []
            - BranchSide:      'priorityq.c:149,10'
              BranchSideFuncs:
                - array_idx_i.9291
      Callsites:
        - Src:             'priorityq.c:146,6'
          Dst:             array_count_i
        - Src:             'priorityq.c:149,10'
          Dst:             array_idx_i
    - functionName:    priorityq_remove_idx
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - pq
        - idx
      BBCount:         15
      ICount:          91
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - array_delete_i
        - array_get_modifiable_i
        - heap_item_bubble_down
        - heap_item_bubble_up
        - heap_items_swap
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'priorityq.c:122,2'
          Branch Sides:
            - BranchSide:      'priorityq.c:122,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'priorityq.c:125,7'
              BranchSideFuncs:
                - heap_items_swap
                - array_delete_i.9287
                - heap_item_bubble_down
                - heap_item_bubble_up
        - Branch String:   'priorityq.c:129,16'
          Branch Sides:
            - BranchSide:      'priorityq.c:129,19'
              BranchSideFuncs:
                - heap_item_bubble_down
                - heap_item_bubble_up
            - BranchSide:      'priorityq.c:129,16'
              BranchSideFuncs: []
        - Branch String:   'priorityq.c:129,6'
          Branch Sides:
            - BranchSide:      'priorityq.c:129,6'
              BranchSideFuncs:
                - heap_item_bubble_down
                - heap_item_bubble_up
            - BranchSide:      'priorityq.c:130,7'
              BranchSideFuncs:
                - heap_item_bubble_down
                - heap_item_bubble_up
        - Branch String:   'priorityq.c:130,7'
          Branch Sides:
            - BranchSide:      'priorityq.c:131,30'
              BranchSideFuncs:
                - heap_item_bubble_up
                - heap_item_bubble_down
            - BranchSide:      'priorityq.c:132,25'
              BranchSideFuncs:
                - heap_item_bubble_down
      Callsites:
        - Src:             'priorityq.c:121,10'
          Dst:             array_get_modifiable_i
        - Src:             'priorityq.c:122,2'
          Dst:             i_panic
        - Src:             'priorityq.c:126,2'
          Dst:             heap_items_swap
        - Src:             'priorityq.c:127,2'
          Dst:             array_delete_i
        - Src:             'priorityq.c:131,10'
          Dst:             heap_item_bubble_up
        - Src:             'priorityq.c:132,3'
          Dst:             heap_item_bubble_down
    - functionName:    heap_item_bubble_up
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - pq
        - idx
      BBCount:         13
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - array_get_modifiable_i
        - heap_items_swap
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'priorityq.c:72,2'
          Branch Sides:
            - BranchSide:      'priorityq.c:72,2'
              BranchSideFuncs:
                - heap_items_swap
                - i_panic
            - BranchSide:      'priorityq.c:73,16'
              BranchSideFuncs:
                - heap_items_swap
                - i_panic
        - Branch String:   'priorityq.c:75,3'
          Branch Sides:
            - BranchSide:      'priorityq.c:75,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'priorityq.c:76,7'
              BranchSideFuncs:
                - heap_items_swap
                - i_panic
        - Branch String:   'priorityq.c:76,7'
          Branch Sides:
            - BranchSide:      'priorityq.c:77,4'
              BranchSideFuncs: []
            - BranchSide:      'priorityq.c:80,19'
              BranchSideFuncs:
                - heap_items_swap
                - i_panic
      Callsites:
        - Src:             'priorityq.c:71,10'
          Dst:             array_get_modifiable_i
        - Src:             'priorityq.c:75,3'
          Dst:             i_panic
        - Src:             'priorityq.c:80,3'
          Dst:             heap_items_swap
    - functionName:    priorityq_remove
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pq
        - item
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - priorityq_remove_idx
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'priorityq.c:138,2'
          Dst:             priorityq_remove_idx
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    priorityq_add
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pq
        - item
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_append_i
        - array_count_i
        - heap_item_bubble_up
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'priorityq.c:111,14'
          Dst:             array_count_i
        - Src:             'priorityq.c:112,2'
          Dst:             array_append_i
        - Src:             'priorityq.c:113,8'
          Dst:             heap_item_bubble_up
    - functionName:    priorityq_count
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pq
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'priorityq.c:44,9'
          Dst:             array_count_i
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_free_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:159,2'
          Dst:             buffer_free
    - functionName:    priorityq_deinit
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _pq
      BBCount:         5
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - array_free_i
        - p_free_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'priorityq.c:38,2'
          Dst:             array_free_i
        - Src:             'priorityq.c:39,2'
          Dst:             p_free_internal
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9288
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9288
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    priorityq_init
      functionSourceFile: '/src/dovecot/src/lib/priorityq.c'
      linkageType:     externalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - cmp_callback
        - init_size
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_i
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'priorityq.c:27,7'
          Dst:             malloc_multiply_check
        - Src:             'priorityq.c:27,7'
          Dst:             p_malloc
        - Src:             'priorityq.c:29,2'
          Dst:             array_create_i
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:275,2'
          Branch Sides:
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:275,2'
          Dst:             i_panic
    - functionName:    array_insert_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
        - data
        - count
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:233,2'
          Dst:             buffer_insert
    - functionName:    adapt
      functionSourceFile: '/src/dovecot/src/lib/punycode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - delta
        - numpoints
        - firsttime
      BBCount:         8
      ICount:          66
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'punycode.c:45,10'
          Branch Sides:
            - BranchSide:      'punycode.c:45,22'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:45,37'
              BranchSideFuncs: []
        - Branch String:   'punycode.c:49,2'
          Branch Sides:
            - BranchSide:      'punycode.c:50,9'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:52,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    decode_digit
      functionSourceFile: '/src/dovecot/src/lib/punycode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - cp
      BBCount:         17
      ICount:          90
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'punycode.c:29,16'
          Branch Sides:
            - BranchSide:      'punycode.c:29,19'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:31,11'
              BranchSideFuncs: []
        - Branch String:   'punycode.c:29,6'
          Branch Sides:
            - BranchSide:      'punycode.c:30,10'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:31,11'
              BranchSideFuncs: []
        - Branch String:   'punycode.c:31,21'
          Branch Sides:
            - BranchSide:      'punycode.c:31,24'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:33,11'
              BranchSideFuncs: []
        - Branch String:   'punycode.c:31,11'
          Branch Sides:
            - BranchSide:      'punycode.c:32,10'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:33,11'
              BranchSideFuncs: []
        - Branch String:   'punycode.c:33,21'
          Branch Sides:
            - BranchSide:      'punycode.c:33,24'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:36,3'
              BranchSideFuncs: []
        - Branch String:   'punycode.c:33,11'
          Branch Sides:
            - BranchSide:      'punycode.c:34,10'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:36,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9340
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.9340
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    punycode_decode
      functionSourceFile: '/src/dovecot/src/lib/punycode.c'
      linkageType:     externalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - len
        - output
      BBCount:         63
      ICount:          416
      EdgeCount:       79
      CyclomaticComplexity: 18
      functionsReached:
        - adapt
        - array_append_i
        - array_count_i
        - array_create_i
        - array_idx_i
        - array_insert_i
        - decode_digit
        - i_panic
        - pool_datastack_create
        - strrchr
        - uni_ucs4_to_utf8
      functionUses:    1
      BranchProfiles:
        - Branch String:   'punycode.c:69,2'
          Branch Sides:
            - BranchSide:      'punycode.c:69,2'
              BranchSideFuncs:
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - array_append_i.9348
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'punycode.c:69,2'
              BranchSideFuncs:
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - array_append_i.9348
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'punycode.c:69,2'
          Branch Sides:
            - BranchSide:      'punycode.c:69,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'punycode.c:72,6'
              BranchSideFuncs:
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - array_append_i.9348
                - i_panic
                - i_panic
        - Branch String:   'punycode.c:72,6'
          Branch Sides:
            - BranchSide:      'punycode.c:73,11'
              BranchSideFuncs:
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - array_append_i.9348
                - i_panic
                - i_panic
            - BranchSide:      'punycode.c:74,2'
              BranchSideFuncs:
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - array_append_i.9348
                - i_panic
                - i_panic
        - Branch String:   'punycode.c:74,2'
          Branch Sides:
            - BranchSide:      'punycode.c:74,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'punycode.c:76,13'
              BranchSideFuncs:
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - array_append_i.9348
                - i_panic
        - Branch String:   'punycode.c:76,2'
          Branch Sides:
            - BranchSide:      'punycode.c:77,23'
              BranchSideFuncs:
                - array_append_i.9348
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - i_panic
            - BranchSide:      'punycode.c:86,8'
              BranchSideFuncs:
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
        - Branch String:   'punycode.c:77,7'
          Branch Sides:
            - BranchSide:      'punycode.c:79,4'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:80,3'
              BranchSideFuncs:
                - array_append_i.9348
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - i_panic
        - Branch String:   'punycode.c:80,3'
          Branch Sides:
            - BranchSide:      'punycode.c:80,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'punycode.c:82,34'
              BranchSideFuncs:
                - array_append_i.9348
                - array_count_i.9347
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
                - i_panic
        - Branch String:   'punycode.c:89,6'
          Branch Sides:
            - BranchSide:      'punycode.c:90,9'
              BranchSideFuncs:
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
            - BranchSide:      'punycode.c:92,9'
              BranchSideFuncs:
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
                - i_panic
        - Branch String:   'punycode.c:94,2'
          Branch Sides:
            - BranchSide:      'punycode.c:94,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'punycode.c:95,2'
              BranchSideFuncs:
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - array_insert_i.9346
                - decode_digit
        - Branch String:   'punycode.c:95,2'
          Branch Sides:
            - BranchSide:      'punycode.c:102,10'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:148,19'
              BranchSideFuncs:
                - array_idx_i.9341
                - uni_ucs4_to_utf8
        - Branch String:   'punycode.c:106,3'
          Branch Sides:
            - BranchSide:      'punycode.c:108,29'
              BranchSideFuncs:
                - decode_digit
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
            - BranchSide:      'punycode.c:124,16'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:109,8'
          Branch Sides:
            - BranchSide:      'punycode.c:110,5'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:111,8'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:111,8'
          Branch Sides:
            - BranchSide:      'punycode.c:112,5'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:113,9'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:114,8'
          Branch Sides:
            - BranchSide:      'punycode.c:114,6'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:115,5'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:115,5'
          Branch Sides:
            - BranchSide:      'punycode.c:114,8'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:115,31'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:116,8'
          Branch Sides:
            - BranchSide:      'punycode.c:117,5'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
            - BranchSide:      'punycode.c:118,8'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:118,8'
          Branch Sides:
            - BranchSide:      'punycode.c:119,5'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:120,17'
              BranchSideFuncs:
                - adapt
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - decode_digit
        - Branch String:   'punycode.c:129,7'
          Branch Sides:
            - BranchSide:      'punycode.c:130,4'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:132,8'
              BranchSideFuncs:
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - decode_digit
        - Branch String:   'punycode.c:135,7'
          Branch Sides:
            - BranchSide:      'punycode.c:136,4'
              BranchSideFuncs: []
            - BranchSide:      'punycode.c:139,7'
              BranchSideFuncs:
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - decode_digit
        - Branch String:   'punycode.c:139,7'
          Branch Sides:
            - BranchSide:      'punycode.c:140,7'
              BranchSideFuncs:
                - array_insert_i.9346
                - array_idx_i.9341
                - uni_ucs4_to_utf8
                - adapt
                - decode_digit
            - BranchSide:      'punycode.c:143,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'punycode.c:65,2'
          Dst:             pool_datastack_create
        - Src:             'punycode.c:65,2'
          Dst:             array_create_i
        - Src:             'punycode.c:68,10'
          Dst:             strrchr
        - Src:             'punycode.c:69,2'
          Dst:             i_panic
        - Src:             'punycode.c:74,2'
          Dst:             i_panic
        - Src:             'punycode.c:80,3'
          Dst:             i_panic
        - Src:             'punycode.c:83,3'
          Dst:             array_append_i
        - Src:             'punycode.c:86,8'
          Dst:             array_count_i
        - Src:             'punycode.c:94,2'
          Dst:             i_panic
        - Src:             'punycode.c:108,12'
          Dst:             decode_digit
        - Src:             'punycode.c:124,10'
          Dst:             adapt
        - Src:             'punycode.c:141,4'
          Dst:             array_insert_i
        - Src:             'punycode.c:148,19'
          Dst:             array_idx_i
        - Src:             'punycode.c:148,2'
          Dst:             uni_ucs4_to_utf8
    - functionName:    random_open_urandom
      functionSourceFile: '/src/dovecot/src/lib/randgen.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - fd_close_on_exec
        - i_fatal
        - open
      functionUses:    1
      BranchProfiles:
        - Branch String:   'randgen.c:70,15'
          Branch Sides:
            - BranchSide:      'randgen.c:70,15'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - __errno_location
                - i_fatal
                - i_fatal
            - BranchSide:      'randgen.c:70,15'
              BranchSideFuncs:
                - open
                - fd_close_on_exec
                - __errno_location
                - i_fatal
                - i_fatal
        - Branch String:   'randgen.c:71,6'
          Branch Sides:
            - BranchSide:      'randgen.c:72,7'
              BranchSideFuncs:
                - __errno_location
                - i_fatal
                - i_fatal
            - BranchSide:      'randgen.c:79,19'
              BranchSideFuncs:
                - fd_close_on_exec
        - Branch String:   'randgen.c:72,7'
          Branch Sides:
            - BranchSide:      'randgen.c:73,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'randgen.c:76,4'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'randgen.c:70,15'
          Dst:             open
        - Src:             'randgen.c:72,7'
          Dst:             __errno_location
        - Src:             'randgen.c:73,4'
          Dst:             i_fatal
        - Src:             'randgen.c:76,4'
          Dst:             i_fatal
        - Src:             'randgen.c:79,2'
          Dst:             fd_close_on_exec
    - functionName:    random_deinit
      functionSourceFile: '/src/dovecot/src/lib/randgen.c'
      linkageType:     externalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_close_fd_path
      functionUses:    1
      BranchProfiles:
        - Branch String:   'randgen.c:211,6'
          Branch Sides:
            - BranchSide:      'randgen.c:211,6'
              BranchSideFuncs:
                - i_close_fd_path
            - BranchSide:      'randgen.c:211,6'
              BranchSideFuncs:
                - i_close_fd_path
        - Branch String:   'randgen.c:211,6'
          Branch Sides:
            - BranchSide:      'randgen.c:212,3'
              BranchSideFuncs: []
            - BranchSide:      'randgen.c:213,2'
              BranchSideFuncs:
                - i_close_fd_path
      Callsites:
        - Src:             'randgen.c:213,2'
          Dst:             i_close_fd_path
    - functionName:    random_init
      functionSourceFile: '/src/dovecot/src/lib/randgen.c'
      linkageType:     externalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          54
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - getenv
        - i_warning
        - random_fill
        - srand
      functionUses:    1
      BranchProfiles:
        - Branch String:   'randgen.c:171,15'
          Branch Sides:
            - BranchSide:      'randgen.c:171,15'
              BranchSideFuncs:
                - getenv
                - random_fill
                - srand
                - i_warning
            - BranchSide:      'randgen.c:171,15'
              BranchSideFuncs:
                - getenv
                - random_fill
                - srand
                - i_warning
        - Branch String:   'randgen.c:174,6'
          Branch Sides:
            - BranchSide:      'randgen.c:175,3'
              BranchSideFuncs: []
            - BranchSide:      'randgen.c:177,13'
              BranchSideFuncs:
                - getenv
                - random_fill
                - srand
                - i_warning
        - Branch String:   'randgen.c:185,23'
          Branch Sides:
            - BranchSide:      'randgen.c:185,27'
              BranchSideFuncs:
                - random_fill
                - srand
                - i_warning
            - BranchSide:      'randgen.c:195,2'
              BranchSideFuncs:
                - random_fill
                - srand
        - Branch String:   'randgen.c:185,6'
          Branch Sides:
            - BranchSide:      'randgen.c:186,3'
              BranchSideFuncs:
                - i_warning
                - random_fill
                - srand
            - BranchSide:      'randgen.c:195,2'
              BranchSideFuncs:
                - random_fill
                - srand
      Callsites:
        - Src:             'randgen.c:177,13'
          Dst:             getenv
        - Src:             'randgen.c:186,3'
          Dst:             i_warning
        - Src:             'randgen.c:195,2'
          Dst:             random_fill
        - Src:             'randgen.c:206,2'
          Dst:             srand
    - functionName:    random_fill
      functionSourceFile: '/src/dovecot/src/lib/randgen.c'
      linkageType:     externalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buf
        - size
      BBCount:         35
      ICount:          193
      EdgeCount:       43
      CyclomaticComplexity: 10
      functionsReached:
        - i_memcpy
        - i_panic
        - random_read
      functionUses:    3
      BranchProfiles:
        - Branch String:   'randgen.c:121,2'
          Branch Sides:
            - BranchSide:      'randgen.c:121,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'randgen.c:122,2'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9389
                - random_read
                - i_panic
        - Branch String:   'randgen.c:122,2'
          Branch Sides:
            - BranchSide:      'randgen.c:122,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'randgen.c:138,11'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9389
                - random_read
        - Branch String:   'randgen.c:138,2'
          Branch Sides:
            - BranchSide:      'randgen.c:139,7'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9389
                - random_read
            - BranchSide:      'randgen.c:166,1'
              BranchSideFuncs: []
        - Branch String:   'randgen.c:139,35'
          Branch Sides:
            - BranchSide:      'randgen.c:139,38'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9389
                - random_read
            - BranchSide:      'randgen.c:148,8'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9389
        - Branch String:   'randgen.c:139,7'
          Branch Sides:
            - BranchSide:      'randgen.c:142,22'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9389
            - BranchSide:      'randgen.c:148,8'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9389
        - Branch String:   'randgen.c:143,8'
          Branch Sides:
            - BranchSide:      'randgen.c:144,12'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9389
                - random_read
            - BranchSide:      'randgen.c:145,3'
              BranchSideFuncs:
                - random_read
                - i_memcpy.9389
                - random_read
        - Branch String:   'randgen.c:148,8'
          Branch Sides:
            - BranchSide:      'randgen.c:149,11'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9389
            - BranchSide:      'randgen.c:151,21'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9389
        - Branch String:   'randgen.c:154,24'
          Branch Sides:
            - BranchSide:      'randgen.c:154,22'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9389
            - BranchSide:      'randgen.c:154,38'
              BranchSideFuncs:
                - random_read
                - random_read
                - i_memcpy.9389
        - Branch String:   'randgen.c:157,19'
          Branch Sides:
            - BranchSide:      'randgen.c:157,12'
              BranchSideFuncs:
                - i_memcpy.9389
                - random_read
                - random_read
            - BranchSide:      'randgen.c:157,12'
              BranchSideFuncs:
                - i_memcpy.9389
                - random_read
                - random_read
      Callsites:
        - Src:             'randgen.c:121,2'
          Dst:             i_panic
        - Src:             'randgen.c:122,2'
          Dst:             i_panic
        - Src:             'randgen.c:142,10'
          Dst:             random_read
        - Src:             'randgen.c:152,11'
          Dst:             random_read
        - Src:             'randgen.c:158,5'
          Dst:             i_memcpy
    - functionName:    srand
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_read
      functionSourceFile: '/src/dovecot/src/lib/randgen.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buf
        - size
      BBCount:         31
      ICount:          152
      EdgeCount:       37
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - getrandom
        - i_fatal
        - i_panic
        - random_open_urandom
        - read
      functionUses:    2
      BranchProfiles:
        - Branch String:   'randgen.c:86,6'
          Branch Sides:
            - BranchSide:      'randgen.c:87,19'
              BranchSideFuncs:
                - getrandom
                - read
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
                - __errno_location
                - random_open_urandom
            - BranchSide:      'randgen.c:100,7'
              BranchSideFuncs:
                - read
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'randgen.c:88,15'
          Branch Sides:
            - BranchSide:      'randgen.c:88,18'
              BranchSideFuncs:
                - __errno_location
                - read
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
                - random_open_urandom
            - BranchSide:      'randgen.c:96,2'
              BranchSideFuncs:
                - read
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'randgen.c:88,7'
          Branch Sides:
            - BranchSide:      'randgen.c:89,22'
              BranchSideFuncs:
                - random_open_urandom
                - read
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
            - BranchSide:      'randgen.c:96,2'
              BranchSideFuncs:
                - read
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'randgen.c:100,6'
          Branch Sides:
            - BranchSide:      'randgen.c:102,14'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
            - BranchSide:      'randgen.c:103,6'
              BranchSideFuncs:
                - __errno_location
                - i_panic
                - __errno_location
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'randgen.c:103,6'
          Branch Sides:
            - BranchSide:      'randgen.c:104,7'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_panic
                - i_fatal
                - i_fatal
                - i_fatal
            - BranchSide:      'randgen.c:114,2'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'randgen.c:104,7'
          Branch Sides:
            - BranchSide:      'randgen.c:105,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'randgen.c:106,14'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
                - i_panic
                - i_fatal
                - i_fatal
        - Branch String:   'randgen.c:107,8'
          Branch Sides:
            - BranchSide:      'randgen.c:108,5'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'randgen.c:110,5'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'randgen.c:114,2'
          Branch Sides:
            - BranchSide:      'randgen.c:114,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'randgen.c:114,2'
              BranchSideFuncs:
                - __errno_location
                - i_panic
        - Branch String:   'randgen.c:114,2'
          Branch Sides:
            - BranchSide:      'randgen.c:114,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'randgen.c:114,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'randgen.c:87,9'
          Dst:             getrandom
        - Src:             'randgen.c:88,18'
          Dst:             __errno_location
        - Src:             'randgen.c:94,4'
          Dst:             random_open_urandom
        - Src:             'randgen.c:102,9'
          Dst:             read
        - Src:             'randgen.c:105,4'
          Dst:             i_fatal
        - Src:             'randgen.c:106,14'
          Dst:             __errno_location
        - Src:             'randgen.c:108,5'
          Dst:             i_fatal
        - Src:             'randgen.c:110,5'
          Dst:             i_fatal
        - Src:             'randgen.c:114,2'
          Dst:             __errno_location
        - Src:             'randgen.c:114,2'
          Dst:             i_panic
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    getrandom
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_rand_limit
      functionSourceFile: '/src/dovecot/src/lib/rand.c'
      linkageType:     externalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - upper_bound
      BBCount:         10
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - i_rand
      functionUses:    1
      BranchProfiles:
        - Branch String:   'rand.c:94,2'
          Branch Sides:
            - BranchSide:      'rand.c:94,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'rand.c:97,17'
              BranchSideFuncs:
                - i_rand
        - Branch String:   'rand.c:98,2'
          Branch Sides:
            - BranchSide:      'rand.c:98,15'
              BranchSideFuncs:
                - i_rand
            - BranchSide:      'rand.c:99,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'rand.c:94,2'
          Dst:             i_panic
        - Src:             'rand.c:98,15'
          Dst:             i_rand
    - functionName:    i_rand
      functionSourceFile: '/src/dovecot/src/lib/rand.c'
      linkageType:     externalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_fill
      functionUses:    1
      BranchProfiles:
        - Branch String:   'rand.c:26,2'
          Branch Sides:
            - BranchSide:      'rand.c:25,11'
              BranchSideFuncs:
                - random_fill
            - BranchSide:      'rand.c:26,2'
              BranchSideFuncs:
                - random_fill
      Callsites:
        - Src:             'rand.c:26,2'
          Dst:             random_fill
    - functionName:    pread_full
      functionSourceFile: '/src/dovecot/src/lib/read-full.c'
      linkageType:     externalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - data
        - size
        - offset
      BBCount:         13
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - pread
      functionUses:    0
      BranchProfiles:
        - Branch String:   'read-full.c:30,2'
          Branch Sides:
            - BranchSide:      'read-full.c:30,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'read-full.c:32,2'
              BranchSideFuncs:
                - pread
        - Branch String:   'read-full.c:32,2'
          Branch Sides:
            - BranchSide:      'read-full.c:33,15'
              BranchSideFuncs:
                - pread
            - BranchSide:      'read-full.c:42,2'
              BranchSideFuncs: []
        - Branch String:   'read-full.c:34,7'
          Branch Sides:
            - BranchSide:      'read-full.c:35,11'
              BranchSideFuncs: []
            - BranchSide:      'read-full.c:37,10'
              BranchSideFuncs:
                - pread
      Callsites:
        - Src:             'read-full.c:30,2'
          Dst:             i_panic
        - Src:             'read-full.c:33,9'
          Dst:             pread
    - functionName:    read_full
      functionSourceFile: '/src/dovecot/src/lib/read-full.c'
      linkageType:     externalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - data
        - size
      BBCount:         13
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - read
      functionUses:    1
      BranchProfiles:
        - Branch String:   'read-full.c:12,2'
          Branch Sides:
            - BranchSide:      'read-full.c:12,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'read-full.c:14,2'
              BranchSideFuncs:
                - read
        - Branch String:   'read-full.c:14,2'
          Branch Sides:
            - BranchSide:      'read-full.c:15,14'
              BranchSideFuncs:
                - read
            - BranchSide:      'read-full.c:23,2'
              BranchSideFuncs: []
        - Branch String:   'read-full.c:16,7'
          Branch Sides:
            - BranchSide:      'read-full.c:17,11'
              BranchSideFuncs: []
            - BranchSide:      'read-full.c:19,10'
              BranchSideFuncs:
                - read
      Callsites:
        - Src:             'read-full.c:12,2'
          Dst:             i_panic
        - Src:             'read-full.c:15,9'
          Dst:             read
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    get_group_id
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         9
      ICount:          55
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - i_fatal
        - i_getgrnam
        - str_to_gid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:160,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:161,10'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:163,21'
              BranchSideFuncs:
                - i_getgrnam
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:163,2'
          Branch Sides:
            - BranchSide:      'restrict-access.c:165,38'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:167,53'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:169,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'restrict-access.c:160,6'
          Dst:             str_to_gid
        - Src:             'restrict-access.c:163,10'
          Dst:             i_getgrnam
        - Src:             'restrict-access.c:165,3'
          Dst:             i_fatal
        - Src:             'restrict-access.c:167,3'
          Dst:             i_fatal
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    drop_restricted_groups
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - gid_list
        - gid_count
        - have_root_group
      BBCount:         16
      ICount:          118
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:143,2'
          Branch Sides:
            - BranchSide:      'restrict-access.c:144,7'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:152,15'
              BranchSideFuncs: []
        - Branch String:   'restrict-access.c:144,43'
          Branch Sides:
            - BranchSide:      'restrict-access.c:145,8'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:151,2'
              BranchSideFuncs: []
        - Branch String:   'restrict-access.c:145,33'
          Branch Sides:
            - BranchSide:      'restrict-access.c:146,8'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:147,8'
              BranchSideFuncs: []
        - Branch String:   'restrict-access.c:144,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:147,8'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:151,2'
              BranchSideFuncs: []
        - Branch String:   'restrict-access.c:147,8'
          Branch Sides:
            - BranchSide:      'restrict-access.c:148,6'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:149,23'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    get_uid_str
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - uid
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - dec2str
        - i_getpwuid
        - t_strdup_printf
      functionUses:    6
      BranchProfiles:
        - Branch String:   'restrict-access.c:39,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:40,17'
              BranchSideFuncs:
                - dec2str
                - __errno_location
            - BranchSide:      'restrict-access.c:42,43'
              BranchSideFuncs:
                - dec2str
                - t_strdup_printf
                - __errno_location
      Callsites:
        - Src:             'restrict-access.c:37,18'
          Dst:             __errno_location
        - Src:             'restrict-access.c:39,6'
          Dst:             i_getpwuid
        - Src:             'restrict-access.c:40,9'
          Dst:             dec2str
        - Src:             'restrict-access.c:42,35'
          Dst:             dec2str
        - Src:             'restrict-access.c:42,9'
          Dst:             t_strdup_printf
        - Src:             'restrict-access.c:43,2'
          Dst:             __errno_location
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    restrict_access_deinit
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          20
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:530,2'
          Branch Sides:
            - BranchSide:      'restrict-access.c:530,2'
              BranchSideFuncs:
                - p_free_internal.9489
            - BranchSide:      'restrict-access.c:530,2'
              BranchSideFuncs:
                - p_free_internal.9489
      Callsites:
        - Src:             'restrict-access.c:530,2'
          Dst:             p_free_internal
    - functionName:    restrict_access_have_priv_gid
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restrict_access_drop_priv_gid
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          33
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_fatal
        - setegid
      functionUses:    0
      BranchProfiles:
        - Branch String:   'restrict-access.c:515,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:515,7'
              BranchSideFuncs:
                - setegid
                - i_fatal
            - BranchSide:      'restrict-access.c:515,7'
              BranchSideFuncs:
                - setegid
                - i_fatal
        - Branch String:   'restrict-access.c:515,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:516,3'
              BranchSideFuncs:
                - setegid
                - i_fatal
            - BranchSide:      'restrict-access.c:518,14'
              BranchSideFuncs:
                - setegid
                - i_fatal
        - Branch String:   'restrict-access.c:518,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:519,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:520,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'restrict-access.c:518,6'
          Dst:             setegid
        - Src:             'restrict-access.c:519,3'
          Dst:             i_fatal
    - functionName:    setegid
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restrict_access_use_priv_gid
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          56
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - i_error
        - i_panic
        - setegid
      functionUses:    0
      BranchProfiles:
        - Branch String:   'restrict-access.c:501,2'
          Branch Sides:
            - BranchSide:      'restrict-access.c:501,2'
              BranchSideFuncs:
                - setegid
                - i_error
                - i_panic
            - BranchSide:      'restrict-access.c:501,2'
              BranchSideFuncs:
                - setegid
                - i_error
                - i_panic
        - Branch String:   'restrict-access.c:501,2'
          Branch Sides:
            - BranchSide:      'restrict-access.c:501,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'restrict-access.c:503,6'
              BranchSideFuncs:
                - setegid
                - i_error
        - Branch String:   'restrict-access.c:503,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:504,3'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:505,14'
              BranchSideFuncs:
                - setegid
                - i_error
        - Branch String:   'restrict-access.c:505,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:506,3'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'restrict-access.c:509,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'restrict-access.c:501,2'
          Dst:             i_panic
        - Src:             'restrict-access.c:505,6'
          Dst:             setegid
        - Src:             'restrict-access.c:506,3'
          Dst:             i_error
    - functionName:    restrict_access_allow_coredumps
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - allow
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getenv
        - restrict_access_set_dumpable
      functionUses:    0
      BranchProfiles:
        - Branch String:   'restrict-access.c:494,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:494,6'
              BranchSideFuncs:
                - restrict_access_set_dumpable
            - BranchSide:      'restrict-access.c:495,32'
              BranchSideFuncs:
                - restrict_access_set_dumpable
      Callsites:
        - Src:             'restrict-access.c:494,6'
          Dst:             getenv
        - Src:             'restrict-access.c:495,3'
          Dst:             restrict_access_set_dumpable
    - functionName:    restrict_access_set_dumpable
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - allow
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_error
        - prctl
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:476,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:476,6'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'restrict-access.c:477,3'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'restrict-access.c:476,6'
          Dst:             prctl
        - Src:             'restrict-access.c:477,3'
          Dst:             i_error
    - functionName:    prctl
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restrict_access_get_dumpable
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_error
        - prctl
      functionUses:    0
      BranchProfiles:
        - Branch String:   'restrict-access.c:484,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:484,7'
              BranchSideFuncs:
                - prctl
                - i_error
            - BranchSide:      'restrict-access.c:484,7'
              BranchSideFuncs:
                - prctl
                - i_error
        - Branch String:   'restrict-access.c:485,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:485,6'
              BranchSideFuncs:
                - i_error
            - BranchSide:      'restrict-access.c:486,3'
              BranchSideFuncs:
                - i_error
      Callsites:
        - Src:             'restrict-access.c:485,6'
          Dst:             prctl
        - Src:             'restrict-access.c:486,3'
          Dst:             i_error
    - functionName:    restrict_access_get_current_chroot
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restrict_access_by_env
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - flags
        - home
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - env_remove
        - getuid
        - restrict_access
        - restrict_access_get_env
      functionUses:    0
      BranchProfiles:
        - Branch String:   'restrict-access.c:447,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:451,3'
              BranchSideFuncs:
                - env_remove
                - env_remove
                - env_remove
                - env_remove
                - getuid
                - env_remove
                - env_remove
                - env_remove
            - BranchSide:      'restrict-access.c:454,2'
              BranchSideFuncs:
                - env_remove
                - env_remove
                - getuid
                - env_remove
                - env_remove
                - env_remove
        - Branch String:   'restrict-access.c:456,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:0,0'
              BranchSideFuncs:
                - env_remove
                - env_remove
                - env_remove
            - BranchSide:      'restrict-access.c:457,3'
              BranchSideFuncs:
                - env_remove
                - env_remove
                - env_remove
      Callsites:
        - Src:             'restrict-access.c:442,2'
          Dst:             restrict_access_get_env
        - Src:             'restrict-access.c:443,2'
          Dst:             restrict_access
        - Src:             'restrict-access.c:446,2'
          Dst:             env_remove
        - Src:             'restrict-access.c:451,3'
          Dst:             env_remove
        - Src:             'restrict-access.c:452,3'
          Dst:             env_remove
        - Src:             'restrict-access.c:454,2'
          Dst:             env_remove
        - Src:             'restrict-access.c:455,2'
          Dst:             env_remove
        - Src:             'restrict-access.c:456,6'
          Dst:             getuid
        - Src:             'restrict-access.c:457,3'
          Dst:             env_remove
        - Src:             'restrict-access.c:464,2'
          Dst:             env_remove
        - Src:             'restrict-access.c:465,2'
          Dst:             env_remove
    - functionName:    restrict_access_get_env
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - set_r
      BBCount:         28
      ICount:          158
      EdgeCount:       33
      CyclomaticComplexity: 7
      functionsReached:
        - getenv
        - i_fatal
        - null_if_empty
        - restrict_access_init
        - str_to_gid
        - str_to_uid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:412,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:413,18'
              BranchSideFuncs:
                - str_to_uid
                - getenv
                - getenv
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:416,15'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:413,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:414,31'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:415,2'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:416,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:417,18'
              BranchSideFuncs:
                - str_to_gid
                - getenv
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:420,15'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:417,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:418,31'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:419,2'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:420,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:421,18'
              BranchSideFuncs:
                - str_to_gid
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:424,15'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:421,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:422,42'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:423,2'
              BranchSideFuncs:
                - getenv
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:424,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:425,18'
              BranchSideFuncs:
                - str_to_gid
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:428,15'
              BranchSideFuncs:
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:425,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:426,43'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:427,2'
              BranchSideFuncs:
                - getenv
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - str_to_gid
                - i_fatal
        - Branch String:   'restrict-access.c:428,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:428,6'
              BranchSideFuncs:
                - str_to_gid
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - i_fatal
            - BranchSide:      'restrict-access.c:429,18'
              BranchSideFuncs:
                - str_to_gid
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - i_fatal
        - Branch String:   'restrict-access.c:429,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:430,42'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:431,2'
              BranchSideFuncs:
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
                - getenv
                - null_if_empty
      Callsites:
        - Src:             'restrict-access.c:411,2'
          Dst:             restrict_access_init
        - Src:             'restrict-access.c:412,15'
          Dst:             getenv
        - Src:             'restrict-access.c:413,7'
          Dst:             str_to_uid
        - Src:             'restrict-access.c:414,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:416,15'
          Dst:             getenv
        - Src:             'restrict-access.c:417,7'
          Dst:             str_to_gid
        - Src:             'restrict-access.c:418,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:420,15'
          Dst:             getenv
        - Src:             'restrict-access.c:421,7'
          Dst:             str_to_gid
        - Src:             'restrict-access.c:422,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:424,15'
          Dst:             getenv
        - Src:             'restrict-access.c:425,7'
          Dst:             str_to_gid
        - Src:             'restrict-access.c:426,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:428,15'
          Dst:             getenv
        - Src:             'restrict-access.c:429,7'
          Dst:             str_to_gid
        - Src:             'restrict-access.c:430,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:433,38'
          Dst:             getenv
        - Src:             'restrict-access.c:433,24'
          Dst:             null_if_empty
        - Src:             'restrict-access.c:434,44'
          Dst:             getenv
        - Src:             'restrict-access.c:434,30'
          Dst:             null_if_empty
        - Src:             'restrict-access.c:435,36'
          Dst:             getenv
        - Src:             'restrict-access.c:435,22'
          Dst:             null_if_empty
    - functionName:    restrict_access
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - flags
        - home
      BBCount:         115
      ICount:          549
      EdgeCount:       145
      CyclomaticComplexity: 32
      functionsReached:
        - chdir
        - chroot
        - fix_groups_list
        - get_gid_str
        - get_setuid_error_str
        - getegid
        - geteuid
        - getgid
        - getuid
        - i_error
        - i_fatal
        - i_panic
        - i_strdup
        - initgroups
        - localtime
        - restrict_init_groups
        - seteuid
        - setgid
        - setuid
        - t_pop
        - t_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:268,15'
          Branch Sides:
            - BranchSide:      'restrict-access.c:269,7'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
            - BranchSide:      'restrict-access.c:283,24'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
        - Branch String:   'restrict-access.c:269,30'
          Branch Sides:
            - BranchSide:      'restrict-access.c:270,6'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
            - BranchSide:      'restrict-access.c:283,24'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
        - Branch String:   'restrict-access.c:268,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:272,7'
              BranchSideFuncs:
                - seteuid
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
                - i_fatal
                - i_panic
                - geteuid
            - BranchSide:      'restrict-access.c:283,24'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
        - Branch String:   'restrict-access.c:272,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:273,17'
              BranchSideFuncs:
                - geteuid
                - seteuid
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
                - i_fatal
            - BranchSide:      'restrict-access.c:275,4'
              BranchSideFuncs:
                - seteuid
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
                - i_fatal
                - i_panic
        - Branch String:   'restrict-access.c:275,4'
          Branch Sides:
            - BranchSide:      'restrict-access.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'restrict-access.c:275,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'restrict-access.c:277,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:278,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:279,11'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
        - Branch String:   'restrict-access.c:285,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:287,26'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
            - BranchSide:      'restrict-access.c:290,20'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
                - restrict_init_groups
                - getegid
        - Branch String:   'restrict-access.c:291,39'
          Branch Sides:
            - BranchSide:      'restrict-access.c:292,6'
              BranchSideFuncs:
                - restrict_init_groups
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
            - BranchSide:      'restrict-access.c:293,7'
              BranchSideFuncs:
                - restrict_init_groups
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
        - Branch String:   'restrict-access.c:291,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:293,7'
              BranchSideFuncs:
                - restrict_init_groups
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
            - BranchSide:      'restrict-access.c:298,7'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
                - getegid
        - Branch String:   'restrict-access.c:293,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:294,26'
              BranchSideFuncs:
                - getegid
                - restrict_init_groups
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
            - BranchSide:      'restrict-access.c:295,24'
              BranchSideFuncs:
                - restrict_init_groups
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
        - Branch String:   'restrict-access.c:303,38'
          Branch Sides:
            - BranchSide:      'restrict-access.c:303,41'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - initgroups
                - get_gid_str
                - i_fatal
            - BranchSide:      'restrict-access.c:315,6'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
        - Branch String:   'restrict-access.c:303,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:304,18'
              BranchSideFuncs:
                - initgroups
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
                - get_gid_str
                - i_fatal
            - BranchSide:      'restrict-access.c:315,6'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
        - Branch String:   'restrict-access.c:304,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:307,5'
              BranchSideFuncs:
                - get_gid_str
                - i_fatal
            - BranchSide:      'restrict-access.c:310,19'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - t_push
                - fix_groups_list
                - t_pop
                - i_panic
        - Branch String:   'restrict-access.c:315,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:315,15'
              BranchSideFuncs:
                - t_push
                - fix_groups_list
                - t_pop
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
                - i_panic
            - BranchSide:      'restrict-access.c:321,6'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:318,4'
          Branch Sides:
            - BranchSide:      'restrict-access.c:318,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'restrict-access.c:318,4'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - localtime
                - chroot
                - chdir
                - i_strdup
                - chdir
                - i_error
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:321,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:324,10'
              BranchSideFuncs:
                - localtime
                - chroot
                - chdir
                - i_strdup
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - chdir
                - i_error
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:343,6'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
        - Branch String:   'restrict-access.c:327,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:328,37'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:330,7'
              BranchSideFuncs:
                - chdir
                - i_strdup
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - chdir
                - i_error
                - i_fatal
        - Branch String:   'restrict-access.c:330,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:331,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:333,25'
              BranchSideFuncs:
                - i_strdup
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - chdir
                - i_error
        - Branch String:   'restrict-access.c:335,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:336,14'
              BranchSideFuncs:
                - chdir
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
                - i_error
            - BranchSide:      'restrict-access.c:340,2'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
        - Branch String:   'restrict-access.c:336,8'
          Branch Sides:
            - BranchSide:      'restrict-access.c:337,37'
              BranchSideFuncs:
                - i_error
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
            - BranchSide:      'restrict-access.c:339,3'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - setuid
                - get_setuid_error_str
                - i_fatal
        - Branch String:   'restrict-access.c:343,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:344,14'
              BranchSideFuncs:
                - setuid
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
                - get_setuid_error_str
                - i_fatal
            - BranchSide:      'restrict-access.c:349,7'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:344,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:345,39'
              BranchSideFuncs:
                - get_setuid_error_str
                - i_fatal
            - BranchSide:      'restrict-access.c:346,2'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:349,31'
          Branch Sides:
            - BranchSide:      'restrict-access.c:349,34'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:349,55'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:349,51'
          Branch Sides:
            - BranchSide:      'restrict-access.c:349,55'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:350,7'
              BranchSideFuncs:
                - setuid
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:349,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:350,7'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:359,6'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:350,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:351,9'
              BranchSideFuncs:
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:357,2'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:351,20'
          Branch Sides:
            - BranchSide:      'restrict-access.c:352,9'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:355,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'restrict-access.c:352,25'
          Branch Sides:
            - BranchSide:      'restrict-access.c:352,28'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:353,5'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'restrict-access.c:351,8'
          Branch Sides:
            - BranchSide:      'restrict-access.c:353,5'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:355,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'restrict-access.c:359,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:360,18'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:361,11'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:361,36'
          Branch Sides:
            - BranchSide:      'restrict-access.c:361,39'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:362,18'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:361,11'
          Branch Sides:
            - BranchSide:      'restrict-access.c:362,18'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:364,18'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:366,22'
          Branch Sides:
            - BranchSide:      'restrict-access.c:366,22'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:366,25'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:366,41'
          Branch Sides:
            - BranchSide:      'restrict-access.c:366,41'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:367,7'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:367,31'
          Branch Sides:
            - BranchSide:      'restrict-access.c:367,35'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:368,7'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:366,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:366,6'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:368,7'
              BranchSideFuncs:
                - getgid
                - getegid
                - setgid
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:368,21'
          Branch Sides:
            - BranchSide:      'restrict-access.c:368,24'
              BranchSideFuncs:
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:369,8'
              BranchSideFuncs:
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:368,39'
          Branch Sides:
            - BranchSide:      'restrict-access.c:368,42'
              BranchSideFuncs:
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:369,8'
              BranchSideFuncs:
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:368,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:369,8'
              BranchSideFuncs:
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:376,2'
              BranchSideFuncs: []
        - Branch String:   'restrict-access.c:369,8'
          Branch Sides:
            - BranchSide:      'restrict-access.c:370,5'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:373,17'
              BranchSideFuncs:
                - get_gid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - i_fatal
      Callsites:
        - Src:             'restrict-access.c:266,12'
          Dst:             geteuid
        - Src:             'restrict-access.c:270,6'
          Dst:             getuid
        - Src:             'restrict-access.c:273,17'
          Dst:             geteuid
        - Src:             'restrict-access.c:275,4'
          Dst:             i_panic
        - Src:             'restrict-access.c:277,7'
          Dst:             seteuid
        - Src:             'restrict-access.c:278,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:294,26'
          Dst:             getegid
        - Src:             'restrict-access.c:295,3'
          Dst:             restrict_init_groups
        - Src:             'restrict-access.c:299,26'
          Dst:             getegid
        - Src:             'restrict-access.c:304,7'
          Dst:             initgroups
        - Src:             'restrict-access.c:308,5'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:306,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:315,15'
          Dst:             t_push
        - Src:             'restrict-access.c:316,3'
          Dst:             fix_groups_list
        - Src:             'restrict-access.c:318,4'
          Dst:             t_pop
        - Src:             'restrict-access.c:318,4'
          Dst:             i_panic
        - Src:             'restrict-access.c:325,9'
          Dst:             localtime
        - Src:             'restrict-access.c:327,7'
          Dst:             chroot
        - Src:             'restrict-access.c:328,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:330,7'
          Dst:             chdir
        - Src:             'restrict-access.c:331,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:333,16'
          Dst:             i_strdup
        - Src:             'restrict-access.c:336,8'
          Dst:             chdir
        - Src:             'restrict-access.c:337,5'
          Dst:             i_error
        - Src:             'restrict-access.c:344,7'
          Dst:             setuid
        - Src:             'restrict-access.c:345,18'
          Dst:             get_setuid_error_str
        - Src:             'restrict-access.c:345,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:350,7'
          Dst:             setuid
        - Src:             'restrict-access.c:353,5'
          Dst:             i_fatal
        - Src:             'restrict-access.c:355,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:368,7'
          Dst:             getgid
        - Src:             'restrict-access.c:368,24'
          Dst:             getegid
        - Src:             'restrict-access.c:368,42'
          Dst:             setgid
        - Src:             'restrict-access.c:370,5'
          Dst:             i_fatal
        - Src:             'restrict-access.c:373,5'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:374,17'
          Dst:             getgid
        - Src:             'restrict-access.c:374,5'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:374,40'
          Dst:             getegid
        - Src:             'restrict-access.c:374,28'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:371,4'
          Dst:             i_fatal
    - functionName:    getuid
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    seteuid
      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:    restrict_init_groups
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - primary_gid
        - privileged_gid
        - gid_source
      BBCount:         25
      ICount:          147
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - get_gid_str
        - get_uid_str
        - getegid
        - geteuid
        - getgid
        - i_fatal
        - setgid
        - setresgid
        - str_c
        - str_printfa
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:66,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:67,7'
              BranchSideFuncs:
                - getgid
                - setgid
                - t_str_new
                - get_gid_str
                - str_printfa
                - geteuid
                - get_uid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - get_gid_str
                - getegid
                - get_gid_str
                - str_printfa
                - str_c
                - i_fatal
                - str_printfa
                - getegid
            - BranchSide:      'restrict-access.c:88,6'
              BranchSideFuncs:
                - getegid
                - setresgid
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
                - getgid
                - getegid
        - Branch String:   'restrict-access.c:67,31'
          Branch Sides:
            - BranchSide:      'restrict-access.c:67,34'
              BranchSideFuncs:
                - getegid
                - setgid
                - t_str_new
                - get_gid_str
                - str_printfa
                - geteuid
                - get_uid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - get_gid_str
                - getegid
                - get_gid_str
                - str_printfa
                - str_c
                - i_fatal
                - str_printfa
            - BranchSide:      'restrict-access.c:72,14'
              BranchSideFuncs:
                - setgid
                - t_str_new
                - get_gid_str
                - str_printfa
                - geteuid
                - get_uid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - get_gid_str
                - getegid
                - get_gid_str
                - str_printfa
                - str_c
                - i_fatal
                - str_printfa
        - Branch String:   'restrict-access.c:67,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:69,4'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:72,14'
              BranchSideFuncs:
                - setgid
                - t_str_new
                - get_gid_str
                - str_printfa
                - geteuid
                - get_uid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - get_gid_str
                - getegid
                - get_gid_str
                - str_printfa
                - str_c
                - i_fatal
                - str_printfa
        - Branch String:   'restrict-access.c:72,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:73,4'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:75,9'
              BranchSideFuncs:
                - t_str_new
                - get_gid_str
                - str_printfa
                - geteuid
                - get_uid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - get_gid_str
                - getegid
                - get_gid_str
                - str_printfa
                - str_c
                - i_fatal
                - str_printfa
        - Branch String:   'restrict-access.c:77,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:78,16'
              BranchSideFuncs:
                - str_printfa
                - geteuid
                - get_uid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - get_gid_str
                - getegid
                - get_gid_str
                - str_printfa
                - str_c
                - i_fatal
            - BranchSide:      'restrict-access.c:79,15'
              BranchSideFuncs:
                - geteuid
                - get_uid_str
                - getgid
                - get_gid_str
                - getegid
                - get_gid_str
                - get_gid_str
                - getegid
                - get_gid_str
                - str_printfa
                - str_c
                - i_fatal
        - Branch String:   'restrict-access.c:88,21'
          Branch Sides:
            - BranchSide:      'restrict-access.c:88,24'
              BranchSideFuncs:
                - getgid
                - setresgid
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
                - getegid
            - BranchSide:      'restrict-access.c:96,16'
              BranchSideFuncs:
                - setresgid
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
        - Branch String:   'restrict-access.c:88,48'
          Branch Sides:
            - BranchSide:      'restrict-access.c:89,6'
              BranchSideFuncs:
                - getegid
                - setresgid
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
            - BranchSide:      'restrict-access.c:96,16'
              BranchSideFuncs:
                - setresgid
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
        - Branch String:   'restrict-access.c:88,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:92,3'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:96,16'
              BranchSideFuncs:
                - setresgid
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
        - Branch String:   'restrict-access.c:96,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:96,6'
              BranchSideFuncs:
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
            - BranchSide:      'restrict-access.c:98,16'
              BranchSideFuncs:
                - get_gid_str
                - get_gid_str
                - get_gid_str
                - geteuid
                - get_uid_str
                - i_fatal
      Callsites:
        - Src:             'restrict-access.c:67,22'
          Dst:             getgid
        - Src:             'restrict-access.c:67,49'
          Dst:             getegid
        - Src:             'restrict-access.c:72,7'
          Dst:             setgid
        - Src:             'restrict-access.c:75,9'
          Dst:             t_str_new
        - Src:             'restrict-access.c:76,33'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:76,3'
          Dst:             str_printfa
        - Src:             'restrict-access.c:78,4'
          Dst:             str_printfa
        - Src:             'restrict-access.c:82,20'
          Dst:             geteuid
        - Src:             'restrict-access.c:82,8'
          Dst:             get_uid_str
        - Src:             'restrict-access.c:83,20'
          Dst:             getgid
        - Src:             'restrict-access.c:83,8'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:83,43'
          Dst:             getegid
        - Src:             'restrict-access.c:83,31'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:84,8'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:84,46'
          Dst:             getegid
        - Src:             'restrict-access.c:84,34'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:79,3'
          Dst:             str_printfa
        - Src:             'restrict-access.c:85,17'
          Dst:             str_c
        - Src:             'restrict-access.c:85,3'
          Dst:             i_fatal
        - Src:             'restrict-access.c:88,6'
          Dst:             getegid
        - Src:             'restrict-access.c:88,39'
          Dst:             getgid
        - Src:             'restrict-access.c:89,21'
          Dst:             getegid
        - Src:             'restrict-access.c:96,6'
          Dst:             setresgid
        - Src:             'restrict-access.c:98,4'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:98,30'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:99,4'
          Dst:             get_gid_str
        - Src:             'restrict-access.c:99,45'
          Dst:             geteuid
        - Src:             'restrict-access.c:99,33'
          Dst:             get_uid_str
        - Src:             'restrict-access.c:97,3'
          Dst:             i_fatal
    - functionName:    initgroups
      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:    get_gid_str
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - gid
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - dec2str
        - i_getgrgid
        - t_strdup_printf
      functionUses:    12
      BranchProfiles:
        - Branch String:   'restrict-access.c:53,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:54,17'
              BranchSideFuncs:
                - dec2str
                - __errno_location
            - BranchSide:      'restrict-access.c:56,43'
              BranchSideFuncs:
                - dec2str
                - t_strdup_printf
                - __errno_location
      Callsites:
        - Src:             'restrict-access.c:51,18'
          Dst:             __errno_location
        - Src:             'restrict-access.c:53,6'
          Dst:             i_getgrgid
        - Src:             'restrict-access.c:54,9'
          Dst:             dec2str
        - Src:             'restrict-access.c:56,35'
          Dst:             dec2str
        - Src:             'restrict-access.c:56,9'
          Dst:             t_strdup_printf
        - Src:             'restrict-access.c:57,2'
          Dst:             __errno_location
    - functionName:    fix_groups_list
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
        - preserve_existing
        - have_root_group
      BBCount:         42
      ICount:          267
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - drop_restricted_groups
        - get_group_id
        - i_fatal
        - i_memcpy
        - malloc_multiply_check
        - restrict_get_groups_list
        - setgroups
        - str_array_length
        - t_malloc0
        - t_strsplit_spaces
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:186,8'
          Branch Sides:
            - BranchSide:      'restrict-access.c:186,6'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
                - restrict_get_groups_list
                - drop_restricted_groups
            - BranchSide:      'restrict-access.c:187,21'
              BranchSideFuncs:
                - t_strsplit_spaces
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
                - restrict_get_groups_list
                - drop_restricted_groups
        - Branch String:   'restrict-access.c:189,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:190,14'
              BranchSideFuncs:
                - restrict_get_groups_list
                - drop_restricted_groups
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
            - BranchSide:      'restrict-access.c:201,12'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
        - Branch String:   'restrict-access.c:194,3'
          Branch Sides:
            - BranchSide:      'restrict-access.c:195,8'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
            - BranchSide:      'restrict-access.c:200,2'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
        - Branch String:   'restrict-access.c:195,8'
          Branch Sides:
            - BranchSide:      'restrict-access.c:196,21'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
            - BranchSide:      'restrict-access.c:199,3'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
                - malloc_multiply_check.9527
                - t_malloc0
        - Branch String:   'restrict-access.c:204,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:207,14'
              BranchSideFuncs:
                - malloc_multiply_check.9527
                - t_malloc0
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
            - BranchSide:      'restrict-access.c:213,7'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - get_group_id
        - Branch String:   'restrict-access.c:213,19'
          Branch Sides:
            - BranchSide:      'restrict-access.c:213,22'
              BranchSideFuncs:
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - get_group_id
            - BranchSide:      'restrict-access.c:215,15'
              BranchSideFuncs:
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - get_group_id
        - Branch String:   'restrict-access.c:213,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:215,15'
              BranchSideFuncs:
                - str_array_length
                - malloc_multiply_check.9527
                - t_malloc0
                - i_memcpy.9483
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - get_group_id
            - BranchSide:      'restrict-access.c:227,16'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:217,3'
          Branch Sides:
            - BranchSide:      'restrict-access.c:218,24'
              BranchSideFuncs:
                - get_group_id
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:222,7'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:219,8'
          Branch Sides:
            - BranchSide:      'restrict-access.c:220,30'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - get_group_id
            - BranchSide:      'restrict-access.c:221,3'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
                - get_group_id
        - Branch String:   'restrict-access.c:222,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:223,29'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:224,14'
              BranchSideFuncs:
                - setgroups
                - __errno_location
                - i_fatal
                - i_fatal
        - Branch String:   'restrict-access.c:227,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:228,7'
              BranchSideFuncs:
                - __errno_location
                - i_fatal
                - i_fatal
            - BranchSide:      'restrict-access.c:236,1'
              BranchSideFuncs: []
        - Branch String:   'restrict-access.c:228,7'
          Branch Sides:
            - BranchSide:      'restrict-access.c:230,5'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:233,4'
              BranchSideFuncs:
                - i_fatal
        - Branch String:   'restrict-access.c:230,5'
          Branch Sides:
            - BranchSide:      'restrict-access.c:229,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:231,5'
              BranchSideFuncs:
                - i_fatal
      Callsites:
        - Src:             'restrict-access.c:187,3'
          Dst:             t_strsplit_spaces
        - Src:             'restrict-access.c:190,14'
          Dst:             restrict_get_groups_list
        - Src:             'restrict-access.c:191,3'
          Dst:             drop_restricted_groups
        - Src:             'restrict-access.c:207,14'
          Dst:             malloc_multiply_check
        - Src:             'restrict-access.c:207,14'
          Dst:             t_malloc0
        - Src:             'restrict-access.c:215,15'
          Dst:             str_array_length
        - Src:             'restrict-access.c:215,15'
          Dst:             malloc_multiply_check
        - Src:             'restrict-access.c:215,15'
          Dst:             t_malloc0
        - Src:             'restrict-access.c:216,3'
          Dst:             i_memcpy
        - Src:             'restrict-access.c:218,10'
          Dst:             get_group_id
        - Src:             'restrict-access.c:227,6'
          Dst:             setgroups
        - Src:             'restrict-access.c:228,7'
          Dst:             __errno_location
        - Src:             'restrict-access.c:229,4'
          Dst:             i_fatal
        - Src:             'restrict-access.c:233,4'
          Dst:             i_fatal
    - functionName:    chroot
      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:    chdir
      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:    setuid
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_setuid_error_str
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - set
        - target_uid
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - get_uid_str
        - geteuid
        - str_append
        - str_c
        - str_printfa
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:244,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:245,15'
              BranchSideFuncs:
                - str_printfa
                - geteuid
                - get_uid_str
                - str_printfa
                - __errno_location
                - get_uid_str
                - geteuid
                - get_uid_str
                - str_printfa
                - str_c
                - str_append.9479
            - BranchSide:      'restrict-access.c:246,14'
              BranchSideFuncs:
                - geteuid
                - get_uid_str
                - str_printfa
                - __errno_location
                - get_uid_str
                - geteuid
                - get_uid_str
                - str_printfa
                - str_c
                - str_append.9479
        - Branch String:   'restrict-access.c:248,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:249,14'
              BranchSideFuncs:
                - str_append.9479
                - str_c
            - BranchSide:      'restrict-access.c:251,15'
              BranchSideFuncs:
                - get_uid_str
                - geteuid
                - get_uid_str
                - str_printfa
                - str_c
      Callsites:
        - Src:             'restrict-access.c:241,18'
          Dst:             t_str_new
        - Src:             'restrict-access.c:243,32'
          Dst:             get_uid_str
        - Src:             'restrict-access.c:243,2'
          Dst:             str_printfa
        - Src:             'restrict-access.c:245,3'
          Dst:             str_printfa
        - Src:             'restrict-access.c:247,19'
          Dst:             geteuid
        - Src:             'restrict-access.c:247,7'
          Dst:             get_uid_str
        - Src:             'restrict-access.c:246,2'
          Dst:             str_printfa
        - Src:             'restrict-access.c:248,6'
          Dst:             __errno_location
        - Src:             'restrict-access.c:249,3'
          Dst:             str_append
        - Src:             'restrict-access.c:253,8'
          Dst:             get_uid_str
        - Src:             'restrict-access.c:253,45'
          Dst:             geteuid
        - Src:             'restrict-access.c:253,33'
          Dst:             get_uid_str
        - Src:             'restrict-access.c:251,3'
          Dst:             str_printfa
        - Src:             'restrict-access.c:255,9'
          Dst:             str_c
    - functionName:    getgid
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setgid
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restrict_get_groups_list
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - gid_count_r
      BBCount:         7
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - getgroups
        - i_fatal
        - malloc_multiply_check
        - t_malloc0
      functionUses:    1
      BranchProfiles:
        - Branch String:   'restrict-access.c:124,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:125,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:128,13'
              BranchSideFuncs:
                - malloc_multiply_check.9527
                - t_malloc0
                - getgroups
                - i_fatal
        - Branch String:   'restrict-access.c:129,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:130,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'restrict-access.c:132,17'
              BranchSideFuncs: []
      Callsites:
        - Src:             'restrict-access.c:124,19'
          Dst:             getgroups
        - Src:             'restrict-access.c:125,3'
          Dst:             i_fatal
        - Src:             'restrict-access.c:128,13'
          Dst:             malloc_multiply_check
        - Src:             'restrict-access.c:128,13'
          Dst:             t_malloc0
        - Src:             'restrict-access.c:129,13'
          Dst:             getgroups
        - Src:             'restrict-access.c:130,3'
          Dst:             i_fatal
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    setgroups
      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:    getgroups
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setresgid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restrict_access_init
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    null_if_empty
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          31
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'restrict-access.c:404,21'
          Branch Sides:
            - BranchSide:      'restrict-access.c:404,9'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:404,25'
              BranchSideFuncs: []
        - Branch String:   'restrict-access.c:404,9'
          Branch Sides:
            - BranchSide:      'restrict-access.c:404,9'
              BranchSideFuncs: []
            - BranchSide:      'restrict-access.c:404,46'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    restrict_access_set_env
      functionSourceFile: '/src/dovecot/src/lib/restrict-access.c'
      linkageType:     externalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - set
      BBCount:         33
      ICount:          201
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - dec2str
        - env_put
      functionUses:    0
      BranchProfiles:
        - Branch String:   'restrict-access.c:381,38'
          Branch Sides:
            - BranchSide:      'restrict-access.c:382,7'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - env_put
            - BranchSide:      'restrict-access.c:384,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
        - Branch String:   'restrict-access.c:381,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:383,28'
              BranchSideFuncs:
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
            - BranchSide:      'restrict-access.c:384,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
        - Branch String:   'restrict-access.c:384,30'
          Branch Sides:
            - BranchSide:      'restrict-access.c:384,34'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
            - BranchSide:      'restrict-access.c:387,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
        - Branch String:   'restrict-access.c:384,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:385,30'
              BranchSideFuncs:
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
            - BranchSide:      'restrict-access.c:387,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
        - Branch String:   'restrict-access.c:387,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:388,38'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
            - BranchSide:      'restrict-access.c:389,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
        - Branch String:   'restrict-access.c:389,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:390,38'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
            - BranchSide:      'restrict-access.c:391,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
                - dec2str
                - env_put
        - Branch String:   'restrict-access.c:391,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:392,43'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
            - BranchSide:      'restrict-access.c:393,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
        - Branch String:   'restrict-access.c:393,32'
          Branch Sides:
            - BranchSide:      'restrict-access.c:393,36'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
                - env_put
            - BranchSide:      'restrict-access.c:396,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
        - Branch String:   'restrict-access.c:393,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:394,38'
              BranchSideFuncs:
                - env_put
                - dec2str
                - env_put
                - dec2str
                - env_put
            - BranchSide:      'restrict-access.c:396,6'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
        - Branch String:   'restrict-access.c:396,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:397,41'
              BranchSideFuncs:
                - dec2str
                - env_put
                - dec2str
                - env_put
            - BranchSide:      'restrict-access.c:398,6'
              BranchSideFuncs:
                - dec2str
                - env_put
        - Branch String:   'restrict-access.c:398,6'
          Branch Sides:
            - BranchSide:      'restrict-access.c:398,6'
              BranchSideFuncs:
                - dec2str
                - env_put
            - BranchSide:      'restrict-access.c:399,40'
              BranchSideFuncs:
                - dec2str
                - env_put
      Callsites:
        - Src:             'restrict-access.c:383,3'
          Dst:             env_put
        - Src:             'restrict-access.c:385,3'
          Dst:             env_put
        - Src:             'restrict-access.c:388,30'
          Dst:             dec2str
        - Src:             'restrict-access.c:388,3'
          Dst:             env_put
        - Src:             'restrict-access.c:390,30'
          Dst:             dec2str
        - Src:             'restrict-access.c:390,3'
          Dst:             env_put
        - Src:             'restrict-access.c:392,35'
          Dst:             dec2str
        - Src:             'restrict-access.c:392,3'
          Dst:             env_put
        - Src:             'restrict-access.c:394,3'
          Dst:             env_put
        - Src:             'restrict-access.c:397,33'
          Dst:             dec2str
        - Src:             'restrict-access.c:397,3'
          Dst:             env_put
        - Src:             'restrict-access.c:399,32'
          Dst:             dec2str
        - Src:             'restrict-access.c:399,3'
          Dst:             env_put
    - functionName:    safe_memset
      functionSourceFile: '/src/dovecot/src/lib/safe-memset.c'
      linkageType:     externalLinkage
      functionLinenumber: 7
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - data
        - c
        - size
      BBCount:         8
      ICount:          52
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'safe-memset.c:11,6'
          Branch Sides:
            - BranchSide:      'safe-memset.c:12,3'
              BranchSideFuncs: []
            - BranchSide:      'safe-memset.c:14,2'
              BranchSideFuncs: []
        - Branch String:   'safe-memset.c:16,2'
          Branch Sides:
            - BranchSide:      'safe-memset.c:15,10'
              BranchSideFuncs: []
            - BranchSide:      'safe-memset.c:16,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    safe_sendfile
      functionSourceFile: '/src/dovecot/src/lib/sendfile-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 20
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - out_fd
        - in_fd
        - offset
        - count
      BBCount:         15
      ICount:          93
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - i_panic
        - sendfile
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sendfile-util.c:25,2'
          Branch Sides:
            - BranchSide:      'sendfile-util.c:25,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sendfile-util.c:39,3'
              BranchSideFuncs:
                - sendfile
                - __errno_location
        - Branch String:   'sendfile-util.c:41,7'
          Branch Sides:
            - BranchSide:      'sendfile-util.c:42,4'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'sendfile-util.c:45,7'
              BranchSideFuncs:
                - sendfile
        - Branch String:   'sendfile-util.c:45,7'
          Branch Sides:
            - BranchSide:      'sendfile-util.c:46,25'
              BranchSideFuncs:
                - sendfile
            - BranchSide:      'sendfile-util.c:49,24'
              BranchSideFuncs:
                - sendfile
      Callsites:
        - Src:             'sendfile-util.c:25,2'
          Dst:             i_panic
        - Src:             'sendfile-util.c:42,4'
          Dst:             __errno_location
        - Src:             'sendfile-util.c:50,8'
          Dst:             sendfile
    - functionName:    sendfile
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_method_result_sha1
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha1_result_libmysqlclient_craps_all_over
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1.c:276,2'
          Dst:             sha1_result_libmysqlclient_craps_all_over
    - functionName:    sha1_result_libmysqlclient_craps_all_over
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     externalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctxt
        - digest0
      BBCount:         3
      ICount:          165
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - safe_memset
        - sha1_pad
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1.c:237,2'
          Dst:             sha1_pad
        - Src:             'sha1.c:252,2'
          Dst:             safe_memset
    - functionName:    sha1_pad
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     externalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctxt
      BBCount:         33
      ICount:          488
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - sha1_step
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sha1.c:177,2'
          Branch Sides:
            - BranchSide:      'sha1.c:177,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:179,13'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:181,6'
          Branch Sides:
            - BranchSide:      'sha1.c:182,11'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:189,10'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:198,2'
          Branch Sides:
            - BranchSide:      'sha1.c:198,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:198,25'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:198,25'
          Branch Sides:
            - BranchSide:      'sha1.c:198,25'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:199,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:199,2'
          Branch Sides:
            - BranchSide:      'sha1.c:199,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:199,25'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:199,25'
          Branch Sides:
            - BranchSide:      'sha1.c:199,25'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:200,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:200,2'
          Branch Sides:
            - BranchSide:      'sha1.c:200,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:200,25'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:200,25'
          Branch Sides:
            - BranchSide:      'sha1.c:200,25'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:201,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
        - Branch String:   'sha1.c:201,2'
          Branch Sides:
            - BranchSide:      'sha1.c:201,2'
              BranchSideFuncs:
                - sha1_step
                - sha1_step
            - BranchSide:      'sha1.c:201,25'
              BranchSideFuncs:
                - sha1_step
        - Branch String:   'sha1.c:201,25'
          Branch Sides:
            - BranchSide:      'sha1.c:201,25'
              BranchSideFuncs:
                - sha1_step
            - BranchSide:      'sha1.c:201,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'sha1.c:177,2'
          Dst:             sha1_step
        - Src:             'sha1.c:185,3'
          Dst:             sha1_step
        - Src:             'sha1.c:198,2'
          Dst:             sha1_step
        - Src:             'sha1.c:198,25'
          Dst:             sha1_step
        - Src:             'sha1.c:199,2'
          Dst:             sha1_step
        - Src:             'sha1.c:199,25'
          Dst:             sha1_step
        - Src:             'sha1.c:200,2'
          Dst:             sha1_step
        - Src:             'sha1.c:200,25'
          Dst:             sha1_step
        - Src:             'sha1.c:201,2'
          Dst:             sha1_step
        - Src:             'sha1.c:201,25'
          Dst:             sha1_step
    - functionName:    sha1_step
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctxt
      BBCount:         20
      ICount:          1070
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    11
      BranchProfiles:
        - Branch String:   'sha1.c:122,2'
          Branch Sides:
            - BranchSide:      'sha1.c:123,7'
              BranchSideFuncs: []
            - BranchSide:      'sha1.c:130,9'
              BranchSideFuncs: []
        - Branch String:   'sha1.c:124,7'
          Branch Sides:
            - BranchSide:      'sha1.c:125,11'
              BranchSideFuncs: []
            - BranchSide:      'sha1.c:127,9'
              BranchSideFuncs: []
        - Branch String:   'sha1.c:130,2'
          Branch Sides:
            - BranchSide:      'sha1.c:131,7'
              BranchSideFuncs: []
            - BranchSide:      'sha1.c:136,9'
              BranchSideFuncs: []
        - Branch String:   'sha1.c:136,2'
          Branch Sides:
            - BranchSide:      'sha1.c:137,7'
              BranchSideFuncs: []
            - BranchSide:      'sha1.c:142,9'
              BranchSideFuncs: []
        - Branch String:   'sha1.c:142,2'
          Branch Sides:
            - BranchSide:      'sha1.c:143,7'
              BranchSideFuncs: []
            - BranchSide:      'sha1.c:149,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_loop_sha1
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha1_loop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1.c:271,2'
          Dst:             sha1_loop
    - functionName:    sha1_loop
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     externalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctxt
        - input
        - len
      BBCount:         12
      ICount:          128
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - sha1_step
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha1.c:216,2'
          Branch Sides:
            - BranchSide:      'sha1.c:217,14'
              BranchSideFuncs:
                - sha1_step
            - BranchSide:      'sha1.c:229,1'
              BranchSideFuncs: []
        - Branch String:   'sha1.c:220,13'
          Branch Sides:
            - BranchSide:      'sha1.c:220,36'
              BranchSideFuncs:
                - sha1_step
            - BranchSide:      'sha1.c:220,45'
              BranchSideFuncs:
                - sha1_step
        - Branch String:   'sha1.c:225,7'
          Branch Sides:
            - BranchSide:      'sha1.c:226,14'
              BranchSideFuncs:
                - sha1_step
            - BranchSide:      'sha1.c:227,10'
              BranchSideFuncs:
                - sha1_step
      Callsites:
        - Src:             'sha1.c:226,4'
          Dst:             sha1_step
    - functionName:    hash_method_init_sha1
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha1_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1.c:267,2'
          Dst:             sha1_init
    - functionName:    sha1_init
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     externalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctxt
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha1_get_digest
      functionSourceFile: '/src/dovecot/src/lib/sha1.c'
      linkageType:     externalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - result
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha1_init
        - sha1_loop
        - sha1_result_libmysqlclient_craps_all_over
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1.c:260,2'
          Dst:             sha1_init
        - Src:             'sha1.c:261,2'
          Dst:             sha1_loop
        - Src:             'sha1.c:262,2'
          Dst:             sha1_result_libmysqlclient_craps_all_over
    - functionName:    hash_method_result_sha512
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha512_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:644,2'
          Dst:             sha512_result
    - functionName:    sha512_result
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - digest
      BBCount:         7
      ICount:          305
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - sha512_transf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:568,2'
          Branch Sides:
            - BranchSide:      'sha2.c:569,3'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:571,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'sha2.c:566,2'
          Dst:             sha512_transf
    - functionName:    sha512_transf
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - block_nb
      BBCount:         25
      ICount:          438
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sha2.c:466,2'
          Branch Sides:
            - BranchSide:      'sha2.c:467,15'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:499,1'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:469,3'
          Branch Sides:
            - BranchSide:      'sha2.c:470,4'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:473,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:473,3'
          Branch Sides:
            - BranchSide:      'sha2.c:474,4'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:477,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:477,3'
          Branch Sides:
            - BranchSide:      'sha2.c:478,12'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:481,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:481,3'
          Branch Sides:
            - BranchSide:      'sha2.c:482,9'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:495,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:495,3'
          Branch Sides:
            - BranchSide:      'sha2.c:496,20'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:498,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_loop_sha512
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha512_loop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:639,2'
          Dst:             sha512_loop
    - functionName:    sha512_loop
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - len
      BBCount:         11
      ICount:          137
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - sha512_transf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:520,6'
          Branch Sides:
            - BranchSide:      'sha2.c:521,3'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:523,32'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha512_transf
                - sha512_transf
                - i_memcpy.9641
        - Branch String:   'sha2.c:524,12'
          Branch Sides:
            - BranchSide:      'sha2.c:524,28'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha512_transf
                - sha512_transf
                - i_memcpy.9641
            - BranchSide:      'sha2.c:524,34'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha512_transf
                - sha512_transf
                - i_memcpy.9641
        - Branch String:   'sha2.c:528,6'
          Branch Sides:
            - BranchSide:      'sha2.c:529,15'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:533,12'
              BranchSideFuncs:
                - sha512_transf
                - sha512_transf
                - i_memcpy.9641
      Callsites:
        - Src:             'sha2.c:526,2'
          Dst:             i_memcpy
        - Src:             'sha2.c:538,2'
          Dst:             sha512_transf
        - Src:             'sha2.c:539,2'
          Dst:             sha512_transf
        - Src:             'sha2.c:542,2'
          Dst:             i_memcpy
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    6
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    hash_method_init_sha512
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha512_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:635,2'
          Dst:             sha512_init
    - functionName:    sha512_init
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:505,2'
          Branch Sides:
            - BranchSide:      'sha2.c:506,25'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:509,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_result_sha384
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha384_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:619,2'
          Dst:             sha384_result
    - functionName:    sha384_result
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - digest
      BBCount:         7
      ICount:          305
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - sha384_transf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:438,2'
          Branch Sides:
            - BranchSide:      'sha2.c:439,3'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:441,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'sha2.c:436,2'
          Dst:             sha384_transf
    - functionName:    sha384_transf
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - block_nb
      BBCount:         25
      ICount:          438
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sha2.c:335,2'
          Branch Sides:
            - BranchSide:      'sha2.c:336,15'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:369,1'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:338,3'
          Branch Sides:
            - BranchSide:      'sha2.c:339,4'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:342,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:342,3'
          Branch Sides:
            - BranchSide:      'sha2.c:343,4'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:346,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:346,3'
          Branch Sides:
            - BranchSide:      'sha2.c:347,12'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:350,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:350,3'
          Branch Sides:
            - BranchSide:      'sha2.c:352,9'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:365,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:365,3'
          Branch Sides:
            - BranchSide:      'sha2.c:366,20'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:368,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_loop_sha384
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha384_loop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:614,2'
          Dst:             sha384_loop
    - functionName:    sha384_loop
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - len
      BBCount:         11
      ICount:          137
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - sha384_transf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:390,6'
          Branch Sides:
            - BranchSide:      'sha2.c:391,3'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:393,32'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha384_transf
                - sha384_transf
                - i_memcpy.9641
        - Branch String:   'sha2.c:394,12'
          Branch Sides:
            - BranchSide:      'sha2.c:394,28'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha384_transf
                - sha384_transf
                - i_memcpy.9641
            - BranchSide:      'sha2.c:394,34'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha384_transf
                - sha384_transf
                - i_memcpy.9641
        - Branch String:   'sha2.c:398,6'
          Branch Sides:
            - BranchSide:      'sha2.c:399,15'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:403,12'
              BranchSideFuncs:
                - sha384_transf
                - sha384_transf
                - i_memcpy.9641
      Callsites:
        - Src:             'sha2.c:396,2'
          Dst:             i_memcpy
        - Src:             'sha2.c:408,2'
          Dst:             sha384_transf
        - Src:             'sha2.c:409,2'
          Dst:             sha384_transf
        - Src:             'sha2.c:412,2'
          Dst:             i_memcpy
    - functionName:    hash_method_init_sha384
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha384_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:610,2'
          Dst:             sha384_init
    - functionName:    sha384_init
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:375,2'
          Branch Sides:
            - BranchSide:      'sha2.c:376,25'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:379,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_result_sha256
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha256_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:594,2'
          Dst:             sha256_result
    - functionName:    sha256_result
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - digest
      BBCount:         7
      ICount:          236
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - sha256_transf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:308,2'
          Branch Sides:
            - BranchSide:      'sha2.c:309,3'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:311,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'sha2.c:306,2'
          Dst:             sha256_transf
    - functionName:    sha256_transf
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - block_nb
      BBCount:         25
      ICount:          398
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sha2.c:206,2'
          Branch Sides:
            - BranchSide:      'sha2.c:207,15'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:239,1'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:209,3'
          Branch Sides:
            - BranchSide:      'sha2.c:210,4'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:213,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:213,3'
          Branch Sides:
            - BranchSide:      'sha2.c:214,4'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:217,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:217,3'
          Branch Sides:
            - BranchSide:      'sha2.c:218,12'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:221,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:221,3'
          Branch Sides:
            - BranchSide:      'sha2.c:222,9'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:235,10'
              BranchSideFuncs: []
        - Branch String:   'sha2.c:235,3'
          Branch Sides:
            - BranchSide:      'sha2.c:236,20'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:238,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_loop_sha256
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha256_loop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:589,2'
          Dst:             sha256_loop
    - functionName:    sha256_loop
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - data
        - len
      BBCount:         11
      ICount:          137
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - sha256_transf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:260,6'
          Branch Sides:
            - BranchSide:      'sha2.c:261,3'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:263,32'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha256_transf
                - sha256_transf
                - i_memcpy.9641
        - Branch String:   'sha2.c:264,12'
          Branch Sides:
            - BranchSide:      'sha2.c:264,28'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha256_transf
                - sha256_transf
                - i_memcpy.9641
            - BranchSide:      'sha2.c:264,34'
              BranchSideFuncs:
                - i_memcpy.9641
                - sha256_transf
                - sha256_transf
                - i_memcpy.9641
        - Branch String:   'sha2.c:268,6'
          Branch Sides:
            - BranchSide:      'sha2.c:269,15'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:273,12'
              BranchSideFuncs:
                - sha256_transf
                - sha256_transf
                - i_memcpy.9641
      Callsites:
        - Src:             'sha2.c:266,2'
          Dst:             i_memcpy
        - Src:             'sha2.c:278,2'
          Dst:             sha256_transf
        - Src:             'sha2.c:279,2'
          Dst:             sha256_transf
        - Src:             'sha2.c:282,2'
          Dst:             i_memcpy
    - functionName:    hash_method_init_sha256
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha256_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:585,2'
          Dst:             sha256_init
    - functionName:    sha256_init
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sha2.c:245,2'
          Branch Sides:
            - BranchSide:      'sha2.c:246,25'
              BranchSideFuncs: []
            - BranchSide:      'sha2.c:249,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    sha512_get_digest
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - digest
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha512_init
        - sha512_loop
        - sha512_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:578,2'
          Dst:             sha512_init
        - Src:             'sha2.c:579,2'
          Dst:             sha512_loop
        - Src:             'sha2.c:580,2'
          Dst:             sha512_result
    - functionName:    sha384_get_digest
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - digest
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha384_init
        - sha384_loop
        - sha384_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:448,2'
          Dst:             sha384_init
        - Src:             'sha2.c:449,2'
          Dst:             sha384_loop
        - Src:             'sha2.c:450,2'
          Dst:             sha384_result
    - functionName:    sha256_get_digest
      functionSourceFile: '/src/dovecot/src/lib/sha2.c'
      linkageType:     externalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - digest
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha256_init
        - sha256_loop
        - sha256_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2.c:318,2'
          Dst:             sha256_init
        - Src:             'sha2.c:319,2'
          Dst:             sha256_loop
        - Src:             'sha2.c:320,2'
          Dst:             sha256_result
    - functionName:    hash_method_result_sha3_512
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_512_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:323,2'
          Dst:             sha3_512_result
    - functionName:    sha3_512_result
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     externalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - digest
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_memcpy
        - sha3_finalize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:267,2'
          Dst:             sha3_finalize
        - Src:             'sha3.c:268,2'
          Dst:             i_memcpy
    - functionName:    sha3_finalize
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - keccakf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:233,2'
          Dst:             keccakf
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    keccakf
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - s
      BBCount:         33
      ICount:          285
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sha3.c:79,2'
          Branch Sides:
            - BranchSide:      'sha3.c:82,9'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:111,1'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:82,3'
          Branch Sides:
            - BranchSide:      'sha3.c:83,12'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:85,9'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:85,3'
          Branch Sides:
            - BranchSide:      'sha3.c:86,12'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:92,7'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:87,4'
          Branch Sides:
            - BranchSide:      'sha3.c:88,17'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:89,3'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:93,3'
          Branch Sides:
            - BranchSide:      'sha3.c:94,21'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:101,9'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:101,3'
          Branch Sides:
            - BranchSide:      'sha3.c:102,10'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:109,24'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:102,4'
          Branch Sides:
            - BranchSide:      'sha3.c:103,13'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:104,10'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:104,4'
          Branch Sides:
            - BranchSide:      'sha3.c:105,23'
              BranchSideFuncs: []
            - BranchSide:      'sha3.c:106,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    hash_method_init_sha3_512
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_512_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:318,2'
          Dst:             sha3_512_init
    - functionName:    sha3_512_init
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     externalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_method_result_sha3_256
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - result_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_256_result
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:302,2'
          Dst:             sha3_256_result
    - functionName:    sha3_256_result
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     externalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
        - digest
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - i_memcpy
        - sha3_finalize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:258,2'
          Dst:             sha3_finalize
        - Src:             'sha3.c:259,2'
          Dst:             i_memcpy
    - functionName:    hash_method_loop_sha3
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_loop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:297,2'
          Dst:             sha3_loop
    - functionName:    sha3_loop
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     externalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - context
        - data
        - len
      BBCount:         62
      ICount:          485
      EdgeCount:       71
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
        - keccakf
        - memcmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sha3.c:141,2'
          Branch Sides:
            - BranchSide:      'sha3.c:141,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:142,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
                - keccakf
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'sha3.c:142,2'
          Branch Sides:
            - BranchSide:      'sha3.c:142,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:144,5'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
                - keccakf
                - i_panic
                - i_panic
        - Branch String:   'sha3.c:144,5'
          Branch Sides:
            - BranchSide:      'sha3.c:147,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:156,5'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
                - keccakf
                - i_panic
        - Branch String:   'sha3.c:147,3'
          Branch Sides:
            - BranchSide:      'sha3.c:148,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:152,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'sha3.c:152,3'
          Branch Sides:
            - BranchSide:      'sha3.c:152,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:153,3'
              BranchSideFuncs: []
        - Branch String:   'sha3.c:156,5'
          Branch Sides:
            - BranchSide:      'sha3.c:158,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
                - keccakf
                - i_panic
            - BranchSide:      'sha3.c:180,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
        - Branch String:   'sha3.c:159,3'
          Branch Sides:
            - BranchSide:      'sha3.c:160,12'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
                - keccakf
                - i_panic
            - BranchSide:      'sha3.c:166,29'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
                - keccakf
                - i_panic
        - Branch String:   'sha3.c:167,3'
          Branch Sides:
            - BranchSide:      'sha3.c:167,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:168,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
                - keccakf
        - Branch String:   'sha3.c:170,6'
          Branch Sides:
            - BranchSide:      'sha3.c:173,12'
              BranchSideFuncs:
                - keccakf
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
            - BranchSide:      'sha3.c:176,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
                - i_panic
        - Branch String:   'sha3.c:180,2'
          Branch Sides:
            - BranchSide:      'sha3.c:180,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:182,10'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
        - Branch String:   'sha3.c:185,2'
          Branch Sides:
            - BranchSide:      'sha3.c:186,34'
              BranchSideFuncs:
                - memcmp
                - i_panic
                - i_panic
                - keccakf
                - i_panic
            - BranchSide:      'sha3.c:206,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'sha3.c:195,3'
          Branch Sides:
            - BranchSide:      'sha3.c:195,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:197,29'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - i_panic
                - keccakf
        - Branch String:   'sha3.c:198,6'
          Branch Sides:
            - BranchSide:      'sha3.c:200,12'
              BranchSideFuncs:
                - keccakf
                - i_panic
                - i_panic
                - memcmp
                - i_panic
            - BranchSide:      'sha3.c:203,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - memcmp
                - keccakf
                - i_panic
        - Branch String:   'sha3.c:206,2'
          Branch Sides:
            - BranchSide:      'sha3.c:206,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'sha3.c:206,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'sha3.c:206,2'
          Branch Sides:
            - BranchSide:      'sha3.c:206,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:207,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'sha3.c:207,2'
          Branch Sides:
            - BranchSide:      'sha3.c:208,7'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:211,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'sha3.c:211,2'
          Branch Sides:
            - BranchSide:      'sha3.c:211,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'sha3.c:211,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'sha3.c:141,2'
          Dst:             i_panic
        - Src:             'sha3.c:142,2'
          Dst:             i_panic
        - Src:             'sha3.c:152,3'
          Dst:             i_panic
        - Src:             'sha3.c:167,3'
          Dst:             i_panic
        - Src:             'sha3.c:173,4'
          Dst:             keccakf
        - Src:             'sha3.c:180,2'
          Dst:             i_panic
        - Src:             'sha3.c:195,3'
          Dst:             memcmp
        - Src:             'sha3.c:195,3'
          Dst:             i_panic
        - Src:             'sha3.c:200,4'
          Dst:             keccakf
        - Src:             'sha3.c:206,2'
          Dst:             i_panic
        - Src:             'sha3.c:211,2'
          Dst:             i_panic
    - functionName:    hash_method_init_sha3_256
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_256_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:292,2'
          Dst:             sha3_256_init
    - functionName:    sha3_256_init
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     externalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - context
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha3_512_get_digest
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     externalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - digest
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_512_init
        - sha3_512_result
        - sha3_loop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:285,2'
          Dst:             sha3_512_init
        - Src:             'sha3.c:286,2'
          Dst:             sha3_loop
        - Src:             'sha3.c:287,2'
          Dst:             sha3_512_result
    - functionName:    sha3_256_get_digest
      functionSourceFile: '/src/dovecot/src/lib/sha3.c'
      linkageType:     externalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - size
        - digest
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_256_init
        - sha3_256_result
        - sha3_loop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3.c:276,2'
          Dst:             sha3_256_init
        - Src:             'sha3.c:277,2'
          Dst:             sha3_loop
        - Src:             'sha3.c:278,2'
          Dst:             sha3_256_result
    - functionName:    i_sleep_intr_secs
      functionSourceFile: '/src/dovecot/src/lib/sleep.c'
      linkageType:     externalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - secs
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sleep_timespec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sleep.c:73,9'
          Dst:             sleep_timespec
    - functionName:    sleep_timespec
      functionSourceFile: '/src/dovecot/src/lib/sleep.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 20
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ts_sleep
        - interruptible
      BBCount:         11
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - i_fatal
        - nanosleep
      functionUses:    6
      BranchProfiles:
        - Branch String:   'sleep.c:13,2'
          Branch Sides:
            - BranchSide:      'sleep.c:14,7'
              BranchSideFuncs:
                - __errno_location
                - nanosleep
                - i_fatal
            - BranchSide:      'sleep.c:19,2'
              BranchSideFuncs: []
        - Branch String:   'sleep.c:14,7'
          Branch Sides:
            - BranchSide:      'sleep.c:15,4'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'sleep.c:16,7'
              BranchSideFuncs:
                - nanosleep
                - __errno_location
                - i_fatal
        - Branch String:   'sleep.c:16,7'
          Branch Sides:
            - BranchSide:      'sleep.c:13,2'
              BranchSideFuncs: []
            - BranchSide:      'sleep.c:17,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'sleep.c:13,9'
          Dst:             nanosleep
        - Src:             'sleep.c:14,7'
          Dst:             __errno_location
        - Src:             'sleep.c:15,4'
          Dst:             i_fatal
    - functionName:    nanosleep
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_sleep_intr_msecs
      functionSourceFile: '/src/dovecot/src/lib/sleep.c'
      linkageType:     externalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - msecs
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sleep_timespec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sleep.c:64,9'
          Dst:             sleep_timespec
    - functionName:    i_sleep_intr_usecs
      functionSourceFile: '/src/dovecot/src/lib/sleep.c'
      linkageType:     externalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - usecs
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sleep_timespec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sleep.c:55,9'
          Dst:             sleep_timespec
    - functionName:    i_sleep_secs
      functionSourceFile: '/src/dovecot/src/lib/sleep.c'
      linkageType:     externalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - secs
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sleep_timespec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sleep.c:46,2'
          Dst:             sleep_timespec
    - functionName:    i_sleep_msecs
      functionSourceFile: '/src/dovecot/src/lib/sleep.c'
      linkageType:     externalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - msecs
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sleep_timespec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sleep.c:37,2'
          Dst:             sleep_timespec
    - functionName:    i_sleep_usecs
      functionSourceFile: '/src/dovecot/src/lib/sleep.c'
      linkageType:     externalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - usecs
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sleep_timespec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sleep.c:28,2'
          Dst:             sleep_timespec
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_truncate_utf8
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_data
        - str_len
        - str_truncate
        - uni_utf8_data_truncate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'str.c:155,6'
          Branch Sides:
            - BranchSide:      'str.c:156,3'
              BranchSideFuncs: []
            - BranchSide:      'str.c:157,15'
              BranchSideFuncs:
                - str_data.9770
                - uni_utf8_data_truncate
                - str_truncate.9772
      Callsites:
        - Src:             'str.c:153,16'
          Dst:             str_len
        - Src:             'str.c:157,43'
          Dst:             str_data
        - Src:             'str.c:157,20'
          Dst:             uni_utf8_data_truncate
        - Src:             'str.c:157,2'
          Dst:             str_truncate
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    2
      BranchProfiles:
        - Branch String:   './str.h:90,6'
          Branch Sides:
            - BranchSide:      './str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      './str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             './str.h:90,6'
          Dst:             str_len
        - Src:             './str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_vprintfa
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - fmt
        - args
      BBCount:         19
      ICount:          160
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - buffer_get_space_unsafe
        - buffer_get_writable_size
        - buffer_set_used_size
        - i_panic
        - printf_format_fix_get_len
        - vsnprintf
      functionUses:    11
      BranchProfiles:
        - Branch String:   'str.c:128,52'
          Branch Sides:
            - BranchSide:      'str.c:129,6'
              BranchSideFuncs:
                - buffer_get_writable_size
                - buffer_get_space_unsafe
                - vsnprintf
                - buffer_set_used_size
                - buffer_get_space_unsafe
                - vsnprintf
                - i_panic
                - i_panic
                - buffer_get_writable_size
            - BranchSide:      'str.c:134,32'
              BranchSideFuncs:
                - buffer_get_space_unsafe
                - vsnprintf
                - buffer_set_used_size
                - buffer_get_space_unsafe
                - vsnprintf
                - i_panic
                - i_panic
        - Branch String:   'str.c:128,6'
          Branch Sides:
            - BranchSide:      'str.c:132,40'
              BranchSideFuncs:
                - buffer_get_writable_size
                - buffer_get_space_unsafe
                - vsnprintf
                - buffer_set_used_size
                - buffer_get_space_unsafe
                - vsnprintf
                - i_panic
                - i_panic
            - BranchSide:      'str.c:134,32'
              BranchSideFuncs:
                - buffer_get_space_unsafe
                - vsnprintf
                - buffer_set_used_size
                - buffer_get_space_unsafe
                - vsnprintf
                - i_panic
                - i_panic
        - Branch String:   'str.c:136,2'
          Branch Sides:
            - BranchSide:      'str.c:136,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str.c:138,20'
              BranchSideFuncs:
                - buffer_set_used_size
                - buffer_get_space_unsafe
                - vsnprintf
                - i_panic
        - Branch String:   'str.c:138,6'
          Branch Sides:
            - BranchSide:      'str.c:138,6'
              BranchSideFuncs:
                - buffer_get_space_unsafe
                - vsnprintf
                - buffer_set_used_size
                - i_panic
            - BranchSide:      'str.c:141,33'
              BranchSideFuncs:
                - buffer_get_space_unsafe
                - vsnprintf
                - buffer_set_used_size
                - i_panic
        - Branch String:   'str.c:143,3'
          Branch Sides:
            - BranchSide:      'str.c:143,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str.c:144,2'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             'str.c:124,8'
          Dst:             printf_format_fix_get_len
        - Src:             'str.c:128,22'
          Dst:             buffer_get_writable_size
        - Src:             'str.c:129,12'
          Dst:             buffer_get_writable_size
        - Src:             'str.c:132,15'
          Dst:             buffer_get_writable_size
        - Src:             'str.c:134,8'
          Dst:             buffer_get_space_unsafe
        - Src:             'str.c:135,8'
          Dst:             vsnprintf
        - Src:             'str.c:136,2'
          Dst:             i_panic
        - Src:             'str.c:141,9'
          Dst:             buffer_get_space_unsafe
        - Src:             'str.c:142,10'
          Dst:             vsnprintf
        - Src:             'str.c:143,3'
          Dst:             i_panic
        - Src:             'str.c:148,2'
          Dst:             buffer_set_used_size
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_printfa
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - fmt
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_vprintfa
      functionUses:    51
      BranchProfiles:  []
      Callsites:
        - Src:             'str.c:106,2'
          Dst:             str_vprintfa
    - functionName:    str_append_max
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - cstr
        - max_len
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_append
        - memchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str.c:94,6'
          Branch Sides:
            - BranchSide:      'str.c:95,9'
              BranchSideFuncs:
                - buffer_append
            - BranchSide:      'str.c:97,9'
              BranchSideFuncs:
                - buffer_append
      Callsites:
        - Src:             'str.c:93,6'
          Dst:             memchr
        - Src:             'str.c:98,2'
          Dst:             buffer_append
    - functionName:    str_equals
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str1
        - str2
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'str.c:82,6'
          Branch Sides:
            - BranchSide:      'str.c:83,3'
              BranchSideFuncs: []
            - BranchSide:      'str.c:85,16'
              BranchSideFuncs:
                - memcmp
      Callsites:
        - Src:             'str.c:85,9'
          Dst:             memcmp
    - functionName:    str_c_modifiable
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_get_modifiable_data
        - str_add_nul
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'str.c:76,2'
          Dst:             str_add_nul
        - Src:             'str.c:77,9'
          Dst:             buffer_get_modifiable_data
    - functionName:    str_add_nul
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_get_size
        - buffer_set_used_size
        - buffer_write
        - str_data
        - str_len
      functionUses:    3
      BranchProfiles:
        - Branch String:   'str.c:55,19'
          Branch Sides:
            - BranchSide:      'str.c:55,22'
              BranchSideFuncs:
                - buffer_write
                - buffer_set_used_size
            - BranchSide:      'str.c:56,16'
              BranchSideFuncs:
                - buffer_write
                - buffer_set_used_size
        - Branch String:   'str.c:55,6'
          Branch Sides:
            - BranchSide:      'str.c:55,6'
              BranchSideFuncs:
                - buffer_write
                - buffer_set_used_size
            - BranchSide:      'str.c:56,16'
              BranchSideFuncs:
                - buffer_write
                - buffer_set_used_size
      Callsites:
        - Src:             'str.c:51,30'
          Dst:             str_data
        - Src:             'str.c:52,15'
          Dst:             str_len
        - Src:             'str.c:53,17'
          Dst:             buffer_get_size
        - Src:             'str.c:56,3'
          Dst:             buffer_write
        - Src:             'str.c:58,3'
          Dst:             buffer_set_used_size
    - functionName:    str_c
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_add_nul
      functionUses:    116
      BranchProfiles:  []
      Callsites:
        - Src:             'str.c:70,2'
          Dst:             str_add_nul
    - functionName:    str_free_without_data
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_free_without_data
        - str_add_nul
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'str.c:64,2'
          Dst:             str_add_nul
        - Src:             'str.c:65,9'
          Dst:             buffer_free_without_data
    - functionName:    str_free
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_free
      functionUses:    9
      BranchProfiles:
        - Branch String:   'str.c:43,18'
          Branch Sides:
            - BranchSide:      'str.c:43,22'
              BranchSideFuncs: []
            - BranchSide:      'str.c:44,3'
              BranchSideFuncs: []
        - Branch String:   'str.c:43,6'
          Branch Sides:
            - BranchSide:      'str.c:44,3'
              BranchSideFuncs: []
            - BranchSide:      'str.c:46,14'
              BranchSideFuncs:
                - buffer_free
      Callsites:
        - Src:             'str.c:46,2'
          Dst:             buffer_free
    - functionName:    t_str_new_const
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_datastack_create
        - str_new_const
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'str.c:38,23'
          Dst:             pool_datastack_create
        - Src:             'str.c:38,9'
          Dst:             str_new_const
    - functionName:    str_new_const
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 20
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - str
        - len
      BBCount:         7
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_create_from_const_data
        - i_panic
        - malloc_multiply_check
        - p_malloc
        - str_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str.c:23,2'
          Branch Sides:
            - BranchSide:      'str.c:23,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str.c:23,2'
              BranchSideFuncs:
                - malloc_multiply_check.9791
                - p_malloc.9792
                - buffer_create_from_const_data
                - str_truncate.9772
      Callsites:
        - Src:             'str.c:23,2'
          Dst:             i_panic
        - Src:             'str.c:25,8'
          Dst:             malloc_multiply_check
        - Src:             'str.c:25,8'
          Dst:             p_malloc
        - Src:             'str.c:26,2'
          Dst:             buffer_create_from_const_data
        - Src:             'str.c:27,2'
          Dst:             str_truncate
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    t_str_new
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - initial_size
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_datastack_create
        - str_new
      functionUses:    65
      BranchProfiles:  []
      Callsites:
        - Src:             'str.c:33,17'
          Dst:             pool_datastack_create
        - Src:             'str.c:33,9'
          Dst:             str_new
    - functionName:    str_new
      functionSourceFile: '/src/dovecot/src/lib/str.c'
      linkageType:     externalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 16
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - initial_size
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_create_dynamic
      functionUses:    16
      BranchProfiles:
        - Branch String:   'str.c:16,37'
          Branch Sides:
            - BranchSide:      'str.c:16,37'
              BranchSideFuncs:
                - buffer_create_dynamic
            - BranchSide:      'str.c:16,37'
              BranchSideFuncs:
                - buffer_create_dynamic
      Callsites:
        - Src:             'str.c:16,9'
          Dst:             buffer_create_dynamic
    - functionName:    str_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_sanitize_skip_start_utf8
      functionSourceFile: '/src/dovecot/src/lib/str-sanitize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - src
        - max_chars
      BBCount:         18
      ICount:          119
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __ctype_b_loc
        - i_panic
        - uni_utf8_get_char
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str-sanitize.c:34,35'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:34,38'
              BranchSideFuncs:
                - i_panic
                - uni_utf8_get_char
                - __ctype_b_loc
            - BranchSide:      'str-sanitize.c:34,2'
              BranchSideFuncs:
                - i_panic
                - uni_utf8_get_char
                - __ctype_b_loc
        - Branch String:   'str-sanitize.c:34,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:35,31'
              BranchSideFuncs:
                - uni_utf8_get_char
                - __ctype_b_loc
                - i_panic
            - BranchSide:      'str-sanitize.c:43,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'str-sanitize.c:36,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:37,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:38,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - i_panic
                - uni_utf8_get_char
        - Branch String:   'str-sanitize.c:38,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:39,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:40,4'
              BranchSideFuncs:
                - i_panic
                - uni_utf8_get_char
                - __ctype_b_loc
        - Branch String:   'str-sanitize.c:43,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:43,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:43,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'str-sanitize.c:35,13'
          Dst:             uni_utf8_get_char
        - Src:             'str-sanitize.c:38,7'
          Dst:             __ctype_b_loc
        - Src:             'str-sanitize.c:43,2'
          Dst:             i_panic
    - functionName:    str_sanitize_utf8
      functionSourceFile: '/src/dovecot/src/lib/str-sanitize.c'
      linkageType:     externalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - src
        - max_cps
      BBCount:         11
      ICount:          73
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_c
        - str_sanitize_append_utf8
        - str_sanitize_skip_start_utf8
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'str-sanitize.c:155,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:156,3'
              BranchSideFuncs: []
            - BranchSide:      'str-sanitize.c:158,35'
              BranchSideFuncs:
                - str_sanitize_skip_start_utf8
                - t_str_new
                - str_sanitize_append_utf8
                - str_c
        - Branch String:   'str-sanitize.c:159,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:160,10'
              BranchSideFuncs: []
            - BranchSide:      'str-sanitize.c:162,18'
              BranchSideFuncs:
                - t_str_new
                - str_sanitize_append_utf8
                - str_c
        - Branch String:   'str-sanitize.c:162,18'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:162,8'
              BranchSideFuncs:
                - t_str_new
                - str_sanitize_append_utf8
                - str_c
            - BranchSide:      'str-sanitize.c:162,8'
              BranchSideFuncs:
                - t_str_new
                - str_sanitize_append_utf8
                - str_c
      Callsites:
        - Src:             'str-sanitize.c:158,6'
          Dst:             str_sanitize_skip_start_utf8
        - Src:             'str-sanitize.c:162,8'
          Dst:             t_str_new
        - Src:             'str-sanitize.c:163,2'
          Dst:             str_sanitize_append_utf8
        - Src:             'str-sanitize.c:164,9'
          Dst:             str_c
    - functionName:    str_sanitize_append_utf8
      functionSourceFile: '/src/dovecot/src/lib/str-sanitize.c'
      linkageType:     externalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - max_cps
      BBCount:         24
      ICount:          167
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
        - i_panic
        - str_append
        - str_append_data
        - str_len
        - str_truncate
        - uni_utf8_get_char
      functionUses:    2
      BranchProfiles:
        - Branch String:   'str-sanitize.c:105,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:105,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:107,9'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_len.9836
                - __ctype_b_loc
                - str_append_data.9839
                - str_append.9838
                - str_append.9838
        - Branch String:   'str-sanitize.c:107,33'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:107,36'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_len.9836
                - __ctype_b_loc
                - str_append_data.9839
                - str_append.9838
                - str_append.9838
            - BranchSide:      'str-sanitize.c:107,2'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_len.9836
                - __ctype_b_loc
                - str_append_data.9839
                - str_append.9838
                - str_append.9838
        - Branch String:   'str-sanitize.c:107,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:108,31'
              BranchSideFuncs:
                - uni_utf8_get_char
                - str_len.9836
                - __ctype_b_loc
                - str_append_data.9839
                - str_truncate.9840
                - str_append.9838
                - str_append.9838
                - str_append.9838
            - BranchSide:      'str-sanitize.c:127,6'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
        - Branch String:   'str-sanitize.c:109,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:110,4'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
            - BranchSide:      'str-sanitize.c:112,22'
              BranchSideFuncs:
                - str_len.9836
                - __ctype_b_loc
                - str_append_data.9839
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_append.9838
                - str_append.9838
        - Branch String:   'str-sanitize.c:113,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:115,15'
              BranchSideFuncs:
                - str_append.9838
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_len.9836
                - __ctype_b_loc
                - str_append_data.9839
                - str_append.9838
            - BranchSide:      'str-sanitize.c:119,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.9839
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_len.9836
                - str_append.9838
                - str_append.9838
        - Branch String:   'str-sanitize.c:119,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:120,15'
              BranchSideFuncs:
                - str_append.9838
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_len.9836
                - __ctype_b_loc
                - str_append_data.9839
                - str_append.9838
            - BranchSide:      'str-sanitize.c:122,20'
              BranchSideFuncs:
                - str_append_data.9839
                - str_truncate.9840
                - str_append.9838
                - uni_utf8_get_char
                - str_len.9836
                - __ctype_b_loc
                - str_append.9838
                - str_append.9838
        - Branch String:   'str-sanitize.c:127,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:127,6'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
            - BranchSide:      'str-sanitize.c:128,16'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
      Callsites:
        - Src:             'str-sanitize.c:105,2'
          Dst:             i_panic
        - Src:             'str-sanitize.c:108,13'
          Dst:             uni_utf8_get_char
        - Src:             'str-sanitize.c:112,14'
          Dst:             str_len
        - Src:             'str-sanitize.c:115,4'
          Dst:             str_append
        - Src:             'str-sanitize.c:119,7'
          Dst:             __ctype_b_loc
        - Src:             'str-sanitize.c:120,4'
          Dst:             str_append
        - Src:             'str-sanitize.c:122,4'
          Dst:             str_append_data
        - Src:             'str-sanitize.c:128,3'
          Dst:             str_truncate
        - Src:             'str-sanitize.c:129,3'
          Dst:             str_append
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:39,2'
          Dst:             buffer_append
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    3
      BranchProfiles:
        - Branch String:   './str.h:90,6'
          Branch Sides:
            - BranchSide:      './str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      './str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             './str.h:90,6'
          Dst:             str_len
        - Src:             './str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_sanitize_skip_start
      functionSourceFile: '/src/dovecot/src/lib/str-sanitize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - src
        - max_bytes
      BBCount:         18
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __ctype_b_loc
        - i_panic
        - uni_utf8_get_char_n
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str-sanitize.c:14,28'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:14,31'
              BranchSideFuncs:
                - i_panic
                - uni_utf8_get_char_n
                - __ctype_b_loc
            - BranchSide:      'str-sanitize.c:14,2'
              BranchSideFuncs:
                - i_panic
                - uni_utf8_get_char_n
                - __ctype_b_loc
        - Branch String:   'str-sanitize.c:14,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:15,33'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - i_panic
            - BranchSide:      'str-sanitize.c:22,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'str-sanitize.c:16,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:17,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:18,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - i_panic
                - uni_utf8_get_char_n
        - Branch String:   'str-sanitize.c:18,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:19,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:20,8'
              BranchSideFuncs:
                - i_panic
                - uni_utf8_get_char_n
                - __ctype_b_loc
        - Branch String:   'str-sanitize.c:22,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:22,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:22,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'str-sanitize.c:15,13'
          Dst:             uni_utf8_get_char_n
        - Src:             'str-sanitize.c:18,7'
          Dst:             __ctype_b_loc
        - Src:             'str-sanitize.c:22,2'
          Dst:             i_panic
    - functionName:    str_sanitize
      functionSourceFile: '/src/dovecot/src/lib/str-sanitize.c'
      linkageType:     externalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - src
        - max_bytes
      BBCount:         11
      ICount:          73
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_c
        - str_sanitize_append
        - str_sanitize_skip_start
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str-sanitize.c:138,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:139,3'
              BranchSideFuncs: []
            - BranchSide:      'str-sanitize.c:141,30'
              BranchSideFuncs:
                - str_sanitize_skip_start
                - t_str_new
                - str_sanitize_append
                - str_c
        - Branch String:   'str-sanitize.c:142,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:143,10'
              BranchSideFuncs: []
            - BranchSide:      'str-sanitize.c:145,18'
              BranchSideFuncs:
                - t_str_new
                - str_sanitize_append
                - str_c
        - Branch String:   'str-sanitize.c:145,18'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:145,8'
              BranchSideFuncs:
                - t_str_new
                - str_sanitize_append
                - str_c
            - BranchSide:      'str-sanitize.c:145,8'
              BranchSideFuncs:
                - t_str_new
                - str_sanitize_append
                - str_c
      Callsites:
        - Src:             'str-sanitize.c:141,6'
          Dst:             str_sanitize_skip_start
        - Src:             'str-sanitize.c:145,8'
          Dst:             t_str_new
        - Src:             'str-sanitize.c:146,2'
          Dst:             str_sanitize_append
        - Src:             'str-sanitize.c:147,9'
          Dst:             str_c
    - functionName:    str_sanitize_append
      functionSourceFile: '/src/dovecot/src/lib/str-sanitize.c'
      linkageType:     externalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - max_bytes
      BBCount:         26
      ICount:          172
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - __ctype_b_loc
        - str_append
        - str_append_c
        - str_append_data
        - str_len
        - str_sanitize_truncate_char
        - str_truncate
        - uni_utf8_get_char_n
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str-sanitize.c:68,28'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:68,31'
              BranchSideFuncs:
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9839
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'str-sanitize.c:68,2'
              BranchSideFuncs:
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9839
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'str-sanitize.c:68,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:69,33'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9839
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - str_append_c.9845
                - str_append_c.9845
            - BranchSide:      'str-sanitize.c:86,6'
              BranchSideFuncs:
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
        - Branch String:   'str-sanitize.c:70,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:71,4'
              BranchSideFuncs:
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
            - BranchSide:      'str-sanitize.c:73,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.9839
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - uni_utf8_get_char_n
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'str-sanitize.c:73,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:75,4'
              BranchSideFuncs:
                - str_append_c.9845
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9839
                - str_append_c.9845
            - BranchSide:      'str-sanitize.c:79,7'
              BranchSideFuncs:
                - __ctype_b_loc
                - str_append_data.9839
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - uni_utf8_get_char_n
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'str-sanitize.c:79,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:80,4'
              BranchSideFuncs:
                - str_append_c.9845
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_data.9839
                - str_append_c.9845
            - BranchSide:      'str-sanitize.c:82,20'
              BranchSideFuncs:
                - str_append_data.9839
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
                - uni_utf8_get_char_n
                - __ctype_b_loc
                - str_append_c.9845
                - str_append_c.9845
        - Branch String:   'str-sanitize.c:86,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:86,6'
              BranchSideFuncs:
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
            - BranchSide:      'str-sanitize.c:87,7'
              BranchSideFuncs:
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
                - str_truncate.9840
        - Branch String:   'str-sanitize.c:87,7'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:88,17'
              BranchSideFuncs:
                - str_truncate.9840
                - str_append.9838
            - BranchSide:      'str-sanitize.c:90,4'
              BranchSideFuncs:
                - str_len.9836
                - str_append.9838
                - str_sanitize_truncate_char
        - Branch String:   'str-sanitize.c:90,4'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:0,0'
              BranchSideFuncs:
                - str_sanitize_truncate_char
                - str_len.9836
                - str_append.9838
            - BranchSide:      'str-sanitize.c:91,32'
              BranchSideFuncs:
                - str_sanitize_truncate_char
                - str_len.9836
                - str_append.9838
      Callsites:
        - Src:             'str-sanitize.c:64,23'
          Dst:             str_len
        - Src:             'str-sanitize.c:69,13'
          Dst:             uni_utf8_get_char_n
        - Src:             'str-sanitize.c:75,4'
          Dst:             str_append_c
        - Src:             'str-sanitize.c:79,7'
          Dst:             __ctype_b_loc
        - Src:             'str-sanitize.c:80,4'
          Dst:             str_append_c
        - Src:             'str-sanitize.c:82,4'
          Dst:             str_append_data
        - Src:             'str-sanitize.c:88,4'
          Dst:             str_truncate
        - Src:             'str-sanitize.c:90,11'
          Dst:             str_len
        - Src:             'str-sanitize.c:91,5'
          Dst:             str_sanitize_truncate_char
        - Src:             'str-sanitize.c:93,3'
          Dst:             str_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_sanitize_truncate_char
      functionSourceFile: '/src/dovecot/src/lib/str-sanitize.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - dest
        - initial_pos
      BBCount:         10
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - str_data
        - str_len
        - str_truncate
        - uni_utf8_data_truncate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str-sanitize.c:52,2'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:52,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'str-sanitize.c:53,6'
              BranchSideFuncs:
                - uni_utf8_data_truncate
                - str_truncate.9840
        - Branch String:   'str-sanitize.c:53,6'
          Branch Sides:
            - BranchSide:      'str-sanitize.c:54,3'
              BranchSideFuncs: []
            - BranchSide:      'str-sanitize.c:56,10'
              BranchSideFuncs:
                - uni_utf8_data_truncate
                - str_truncate.9840
      Callsites:
        - Src:             'str-sanitize.c:49,30'
          Dst:             str_data
        - Src:             'str-sanitize.c:50,15'
          Dst:             str_len
        - Src:             'str-sanitize.c:52,2'
          Dst:             i_panic
        - Src:             'str-sanitize.c:59,3'
          Dst:             uni_utf8_data_truncate
        - Src:             'str-sanitize.c:58,2'
          Dst:             str_truncate
    - functionName:    str_begins_icase_with
      functionSourceFile: '/src/dovecot/src/lib/./strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_match_icase
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             './strfuncs.h:105,16'
          Dst:             str_match_icase
    - functionName:    str_parse_get_bool
      functionSourceFile: '/src/dovecot/src/lib/str-parse.c'
      linkageType:     externalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - value
        - result_r
        - error_r
      BBCount:         15
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strcasecmp
        - strcmp
        - t_strdup_printf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'str-parse.c:155,36'
          Branch Sides:
            - BranchSide:      'str-parse.c:156,17'
              BranchSideFuncs: []
            - BranchSide:      'str-parse.c:157,4'
              BranchSideFuncs: []
        - Branch String:   'str-parse.c:156,34'
          Branch Sides:
            - BranchSide:      'str-parse.c:156,44'
              BranchSideFuncs: []
            - BranchSide:      'str-parse.c:157,4'
              BranchSideFuncs: []
        - Branch String:   'str-parse.c:155,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:157,4'
              BranchSideFuncs: []
            - BranchSide:      'str-parse.c:158,22'
              BranchSideFuncs:
                - strcasecmp
                - t_strdup_printf
        - Branch String:   'str-parse.c:158,11'
          Branch Sides:
            - BranchSide:      'str-parse.c:159,4'
              BranchSideFuncs: []
            - BranchSide:      'str-parse.c:162,9'
              BranchSideFuncs:
                - t_strdup_printf
      Callsites:
        - Src:             'str-parse.c:155,6'
          Dst:             strcasecmp
        - Src:             'str-parse.c:156,6'
          Dst:             strcasecmp
        - Src:             'str-parse.c:156,37'
          Dst:             strcmp
        - Src:             'str-parse.c:158,11'
          Dst:             strcasecmp
        - Src:             'str-parse.c:161,14'
          Dst:             t_strdup_printf
    - functionName:    str_parse_get_size
      functionSourceFile: '/src/dovecot/src/lib/str-parse.c'
      linkageType:     externalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - bytes_r
        - error_r
      BBCount:         29
      ICount:          198
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - str_parse_uintmax
        - t_strconcat
        - toupper
      functionUses:    2
      BranchProfiles:
        - Branch String:   'str-parse.c:104,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:105,44'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'str-parse.c:108,2'
              BranchSideFuncs:
                - toupper
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
        - Branch String:   'str-parse.c:108,2'
          Branch Sides:
            - BranchSide:      'str-parse.c:108,21'
              BranchSideFuncs:
                - toupper
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
            - BranchSide:      'str-parse.c:109,10'
              BranchSideFuncs:
                - toupper
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
        - Branch String:   'str-parse.c:109,2'
          Branch Sides:
            - BranchSide:      'str-parse.c:111,12'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
            - BranchSide:      'str-parse.c:115,12'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
            - BranchSide:      'str-parse.c:119,12'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
            - BranchSide:      'str-parse.c:123,12'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
            - BranchSide:      'str-parse.c:127,12'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
            - BranchSide:      'str-parse.c:132,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
                - toupper
                - toupper
        - Branch String:   'str-parse.c:132,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:134,7'
              BranchSideFuncs:
                - toupper
                - toupper
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:139,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:134,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:135,5'
              BranchSideFuncs:
                - toupper
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:136,7'
              BranchSideFuncs:
                - toupper
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:136,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:137,5'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:138,2'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:139,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:140,44'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'str-parse.c:143,6'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'str-parse.c:143,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:144,49'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'str-parse.c:147,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'str-parse.c:104,6'
          Dst:             str_parse_uintmax
        - Src:             'str-parse.c:105,14'
          Dst:             t_strconcat
        - Src:             'str-parse.c:109,10'
          Dst:             toupper
        - Src:             'str-parse.c:134,7'
          Dst:             toupper
        - Src:             'str-parse.c:136,7'
          Dst:             toupper
        - Src:             'str-parse.c:140,14'
          Dst:             t_strconcat
        - Src:             'str-parse.c:144,14'
          Dst:             t_strconcat
    - functionName:    str_parse_get_interval_msecs
      functionSourceFile: '/src/dovecot/src/lib/str-parse.c'
      linkageType:     externalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - msecs_r
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_parse_get_interval_full
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'str-parse.c:95,9'
          Dst:             str_parse_get_interval_full
    - functionName:    str_parse_get_interval_full
      functionSourceFile: '/src/dovecot/src/lib/str-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - interval_r
        - milliseconds
        - error_r
      BBCount:         117
      ICount:          516
      EdgeCount:       158
      CyclomaticComplexity: 43
      functionsReached:
        - str_begins_icase_with
        - str_parse_uintmax
        - strlen
        - strncasecmp
        - t_strconcat
        - t_strdup_printf
        - toupper
      functionUses:    2
      BranchProfiles:
        - Branch String:   'str-parse.c:15,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:16,53'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'str-parse.c:19,2'
              BranchSideFuncs:
                - toupper
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - t_strdup_printf
        - Branch String:   'str-parse.c:19,2'
          Branch Sides:
            - BranchSide:      'str-parse.c:19,21'
              BranchSideFuncs:
                - toupper
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - t_strdup_printf
            - BranchSide:      'str-parse.c:20,7'
              BranchSideFuncs:
                - toupper
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - t_strdup_printf
        - Branch String:   'str-parse.c:20,17'
          Branch Sides:
            - BranchSide:      'str-parse.c:20,20'
              BranchSideFuncs:
                - toupper
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - t_strdup_printf
            - BranchSide:      'str-parse.c:25,10'
              BranchSideFuncs:
                - toupper
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:20,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:22,34'
              BranchSideFuncs:
                - t_strdup_printf
            - BranchSide:      'str-parse.c:25,10'
              BranchSideFuncs:
                - toupper
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:25,2'
          Branch Sides:
            - BranchSide:      'str-parse.c:27,12'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:33,12'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:57,12'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:62,12'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:67,12'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:73,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:28,40'
          Branch Sides:
            - BranchSide:      'str-parse.c:28,7'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:28,7'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:28,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:28,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:30,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:28,40'
          Branch Sides:
            - BranchSide:      'str-parse.c:28,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:30,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:28,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:29,7'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:29,7'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:29,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:30,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:31,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:28,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:30,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:31,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:34,40'
          Branch Sides:
            - BranchSide:      'str-parse.c:34,7'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:34,7'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:34,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:34,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:36,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:34,40'
          Branch Sides:
            - BranchSide:      'str-parse.c:34,7'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:36,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:34,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:35,7'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:35,7'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:35,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:36,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:37,46'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:34,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:36,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:37,46'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:37,46'
          Branch Sides:
            - BranchSide:      'str-parse.c:37,12'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:37,12'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:37,12'
          Branch Sides:
            - BranchSide:      'str-parse.c:38,42'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:41,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:37,46'
          Branch Sides:
            - BranchSide:      'str-parse.c:38,42'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:41,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:38,42'
          Branch Sides:
            - BranchSide:      'str-parse.c:38,5'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:38,5'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:38,5'
          Branch Sides:
            - BranchSide:      'str-parse.c:39,43'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:41,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:38,42'
          Branch Sides:
            - BranchSide:      'str-parse.c:39,43'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:41,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:39,43'
          Branch Sides:
            - BranchSide:      'str-parse.c:39,5'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
            - BranchSide:      'str-parse.c:39,5'
              BranchSideFuncs:
                - str_begins_icase_with
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
                - strlen
                - strncasecmp
        - Branch String:   'str-parse.c:39,5'
          Branch Sides:
            - BranchSide:      'str-parse.c:37,12'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:41,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:39,43'
          Branch Sides:
            - BranchSide:      'str-parse.c:37,12'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:41,8'
              BranchSideFuncs:
                - t_strdup_printf
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:37,12'
          Branch Sides:
            - BranchSide:      'str-parse.c:40,5'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
            - BranchSide:      'str-parse.c:40,5'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
                - t_strdup_printf
        - Branch String:   'str-parse.c:41,21'
          Branch Sides:
            - BranchSide:      'str-parse.c:41,25'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:42,10'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:41,8'
          Branch Sides:
            - BranchSide:      'str-parse.c:42,10'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:52,56'
              BranchSideFuncs:
                - t_strdup_printf
        - Branch String:   'str-parse.c:42,9'
          Branch Sides:
            - BranchSide:      'str-parse.c:45,10'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:47,14'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:58,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:58,7'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:58,7'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:58,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:59,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:60,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:58,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:59,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:60,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:63,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:63,7'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:63,7'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:63,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:64,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:65,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:63,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:64,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:65,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:68,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:68,7'
              BranchSideFuncs:
                - strlen
                - strncasecmp
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:68,7'
              BranchSideFuncs:
                - str_begins_icase_with
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:68,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:69,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:70,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:68,7'
          Branch Sides:
            - BranchSide:      'str-parse.c:69,6'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
            - BranchSide:      'str-parse.c:70,3'
              BranchSideFuncs:
                - t_strconcat
                - t_strconcat
        - Branch String:   'str-parse.c:73,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:74,53'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'str-parse.c:77,6'
              BranchSideFuncs:
                - t_strconcat
        - Branch String:   'str-parse.c:77,6'
          Branch Sides:
            - BranchSide:      'str-parse.c:79,12'
              BranchSideFuncs:
                - t_strconcat
            - BranchSide:      'str-parse.c:82,16'
              BranchSideFuncs: []
      Callsites:
        - Src:             'str-parse.c:15,6'
          Dst:             str_parse_uintmax
        - Src:             'str-parse.c:16,14'
          Dst:             t_strconcat
        - Src:             'str-parse.c:21,14'
          Dst:             t_strdup_printf
        - Src:             'str-parse.c:25,10'
          Dst:             toupper
        - Src:             'str-parse.c:28,7'
          Dst:             strlen
        - Src:             'str-parse.c:28,7'
          Dst:             strncasecmp
        - Src:             'str-parse.c:28,7'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:29,7'
          Dst:             strlen
        - Src:             'str-parse.c:29,7'
          Dst:             strncasecmp
        - Src:             'str-parse.c:29,7'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:34,7'
          Dst:             strlen
        - Src:             'str-parse.c:34,7'
          Dst:             strncasecmp
        - Src:             'str-parse.c:34,7'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:35,7'
          Dst:             strlen
        - Src:             'str-parse.c:35,7'
          Dst:             strncasecmp
        - Src:             'str-parse.c:35,7'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:37,12'
          Dst:             strlen
        - Src:             'str-parse.c:37,12'
          Dst:             strncasecmp
        - Src:             'str-parse.c:37,12'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:38,5'
          Dst:             strlen
        - Src:             'str-parse.c:38,5'
          Dst:             strncasecmp
        - Src:             'str-parse.c:38,5'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:39,5'
          Dst:             strlen
        - Src:             'str-parse.c:39,5'
          Dst:             strncasecmp
        - Src:             'str-parse.c:39,5'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:40,5'
          Dst:             strlen
        - Src:             'str-parse.c:40,5'
          Dst:             strncasecmp
        - Src:             'str-parse.c:40,5'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:51,15'
          Dst:             t_strdup_printf
        - Src:             'str-parse.c:58,7'
          Dst:             strlen
        - Src:             'str-parse.c:58,7'
          Dst:             strncasecmp
        - Src:             'str-parse.c:58,7'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:63,7'
          Dst:             strlen
        - Src:             'str-parse.c:63,7'
          Dst:             strncasecmp
        - Src:             'str-parse.c:63,7'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:68,7'
          Dst:             strlen
        - Src:             'str-parse.c:68,7'
          Dst:             strncasecmp
        - Src:             'str-parse.c:68,7'
          Dst:             str_begins_icase_with
        - Src:             'str-parse.c:74,14'
          Dst:             t_strconcat
        - Src:             'str-parse.c:78,14'
          Dst:             t_strconcat
    - functionName:    str_parse_get_interval
      functionSourceFile: '/src/dovecot/src/lib/str-parse.c'
      linkageType:     externalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - secs_r
        - error_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_parse_get_interval_full
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'str-parse.c:89,9'
          Dst:             str_parse_get_interval_full
    - functionName:    p_realloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         11
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:131,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:133,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:133,6'
          Branch Sides:
            - BranchSide:      './mempool.h:134,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:136,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:130,3'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    t_strsplit_tabescaped
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_strdup_noconst
        - t_strsplit_tabescaped_inplace
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'strescape.c:357,39'
          Dst:             t_strdup_noconst
        - Src:             'strescape.c:357,9'
          Dst:             t_strsplit_tabescaped_inplace
    - functionName:    t_strsplit_tabescaped_inplace
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strsplit_tabescaped_inplace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'strescape.c:346,3'
          Dst:             p_strsplit_tabescaped_inplace
    - functionName:    p_strsplit_tabescaped_inplace
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - data
      BBCount:         30
      ICount:          216
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - nearest_power
        - p_malloc
        - p_realloc
        - str_tabunescape_from
        - strpbrk
        - t_malloc_no0
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strescape.c:302,6'
          Branch Sides:
            - BranchSide:      'strescape.c:303,10'
              BranchSideFuncs:
                - malloc_multiply_check.9945
                - p_malloc.9947
            - BranchSide:      'strescape.c:305,14'
              BranchSideFuncs:
                - p_malloc.9947
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
                - t_malloc_no0
        - Branch String:   'strescape.c:306,10'
          Branch Sides:
            - BranchSide:      'strescape.c:307,33'
              BranchSideFuncs:
                - t_malloc_no0
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
            - BranchSide:      'strescape.c:308,12'
              BranchSideFuncs:
                - p_malloc.9947
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
        - Branch String:   'strescape.c:312,2'
          Branch Sides:
            - BranchSide:      'strescape.c:314,8'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
            - BranchSide:      'strescape.c:335,6'
              BranchSideFuncs:
                - i_panic
                - str_tabunescape_from
        - Branch String:   'strescape.c:314,7'
          Branch Sides:
            - BranchSide:      'strescape.c:315,8'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
            - BranchSide:      'strescape.c:320,7'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
        - Branch String:   'strescape.c:315,8'
          Branch Sides:
            - BranchSide:      'strescape.c:316,21'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
            - BranchSide:      'strescape.c:317,8'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
        - Branch String:   'strescape.c:320,7'
          Branch Sides:
            - BranchSide:      'strescape.c:321,36'
              BranchSideFuncs:
                - nearest_power
                - p_realloc.9943
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
            - BranchSide:      'strescape.c:328,8'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
                - str_tabunescape_from
        - Branch String:   'strescape.c:329,7'
          Branch Sides:
            - BranchSide:      'strescape.c:330,25'
              BranchSideFuncs:
                - str_tabunescape_from
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
            - BranchSide:      'strescape.c:333,20'
              BranchSideFuncs:
                - strpbrk
                - i_panic
                - str_tabunescape_from
                - str_tabunescape_from
                - nearest_power
                - p_realloc.9943
        - Branch String:   'strescape.c:335,6'
          Branch Sides:
            - BranchSide:      'strescape.c:336,24'
              BranchSideFuncs:
                - str_tabunescape_from
                - i_panic
            - BranchSide:      'strescape.c:337,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strescape.c:337,2'
          Branch Sides:
            - BranchSide:      'strescape.c:337,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strescape.c:338,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strescape.c:303,10'
          Dst:             malloc_multiply_check
        - Src:             'strescape.c:303,10'
          Dst:             p_malloc
        - Src:             'strescape.c:307,3'
          Dst:             t_malloc_no0
        - Src:             'strescape.c:308,3'
          Dst:             p_malloc
        - Src:             'strescape.c:312,17'
          Dst:             strpbrk
        - Src:             'strescape.c:321,22'
          Dst:             nearest_power
        - Src:             'strescape.c:322,12'
          Dst:             p_realloc
        - Src:             'strescape.c:330,4'
          Dst:             str_tabunescape_from
        - Src:             'strescape.c:336,3'
          Dst:             str_tabunescape_from
        - Src:             'strescape.c:337,2'
          Dst:             i_panic
    - functionName:    strpbrk
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_tabunescape_from
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - src
      BBCount:         16
      ICount:          136
      EdgeCount:       16
      CyclomaticComplexity: 2
      functionsReached:
        - strchr
        - strlen
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strescape.c:234,3'
          Branch Sides:
            - BranchSide:      'strescape.c:237,5'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:240,9'
              BranchSideFuncs:
                - strchr
                - strlen
            - BranchSide:      'strescape.c:243,9'
              BranchSideFuncs:
                - strchr
                - strlen
            - BranchSide:      'strescape.c:246,9'
              BranchSideFuncs:
                - strchr
                - strlen
            - BranchSide:      'strescape.c:249,9'
              BranchSideFuncs:
                - strchr
                - strlen
            - BranchSide:      'strescape.c:252,9'
              BranchSideFuncs:
                - strchr
                - strlen
            - BranchSide:      'strescape.c:255,14'
              BranchSideFuncs:
                - strchr
                - strlen
        - Branch String:   'strescape.c:261,7'
          Branch Sides:
            - BranchSide:      'strescape.c:262,12'
              BranchSideFuncs:
                - strlen
            - BranchSide:      'strescape.c:266,21'
              BranchSideFuncs:
                - strchr
                - strlen
      Callsites:
        - Src:             'strescape.c:260,7'
          Dst:             strchr
        - Src:             'strescape.c:262,23'
          Dst:             strlen
    - functionName:    p_strsplit_tabescaped
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - str
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup
        - p_strsplit_tabescaped_inplace
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strescape.c:352,45'
          Dst:             p_strdup
        - Src:             'strescape.c:352,9'
          Dst:             p_strsplit_tabescaped_inplace
    - functionName:    t_str_tabunescape
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_tabunescape_from
        - strchr
        - t_strdup_noconst
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strescape.c:289,6'
          Branch Sides:
            - BranchSide:      'strescape.c:290,10'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:292,32'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_tabunescape_from
      Callsites:
        - Src:             'strescape.c:288,6'
          Dst:             strchr
        - Src:             'strescape.c:292,15'
          Dst:             t_strdup_noconst
        - Src:             'strescape.c:293,9'
          Dst:             str_tabunescape_from
    - functionName:    str_tabunescape
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_tabunescape_from
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strescape.c:277,6'
          Branch Sides:
            - BranchSide:      'strescape.c:279,10'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:281,30'
              BranchSideFuncs:
                - str_tabunescape_from
      Callsites:
        - Src:             'strescape.c:276,14'
          Dst:             strchr
        - Src:             'strescape.c:281,9'
          Dst:             str_tabunescape_from
    - functionName:    str_append_tabunescaped
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - src_size
      BBCount:         26
      ICount:          154
      EdgeCount:       30
      CyclomaticComplexity: 6
      functionsReached:
        - str_append_c
        - str_append_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strescape.c:189,2'
          Branch Sides:
            - BranchSide:      'strescape.c:190,3'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:225,1'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:190,3'
          Branch Sides:
            - BranchSide:      'strescape.c:191,8'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:195,19'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
        - Branch String:   'strescape.c:191,8'
          Branch Sides:
            - BranchSide:      'strescape.c:192,5'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:193,3'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
        - Branch String:   'strescape.c:197,7'
          Branch Sides:
            - BranchSide:      'strescape.c:198,5'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:223,11'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
        - Branch String:   'strescape.c:199,8'
          Branch Sides:
            - BranchSide:      'strescape.c:200,13'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:222,3'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
        - Branch String:   'strescape.c:200,5'
          Branch Sides:
            - BranchSide:      'strescape.c:202,6'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:205,6'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:208,6'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:211,6'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:214,6'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
            - BranchSide:      'strescape.c:217,6'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
                - str_append_c.9959
      Callsites:
        - Src:             'strescape.c:195,3'
          Dst:             str_append_data
        - Src:             'strescape.c:202,6'
          Dst:             str_append_c
        - Src:             'strescape.c:205,6'
          Dst:             str_append_c
        - Src:             'strescape.c:208,6'
          Dst:             str_append_c
        - Src:             'strescape.c:211,6'
          Dst:             str_append_c
        - Src:             'strescape.c:214,6'
          Dst:             str_append_c
        - Src:             'strescape.c:217,6'
          Dst:             str_append_c
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:39,2'
          Dst:             buffer_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_tabescape
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_append_data
        - str_append_tabescaped
        - str_c
        - strpbrk
        - t_str_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strescape.c:175,6'
          Branch Sides:
            - BranchSide:      'strescape.c:176,9'
              BranchSideFuncs:
                - t_str_new
                - str_append_data.9957
                - str_append_tabescaped
                - str_c
            - BranchSide:      'strescape.c:181,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strescape.c:175,11'
          Dst:             strpbrk
        - Src:             'strescape.c:176,9'
          Dst:             t_str_new
        - Src:             'strescape.c:177,3'
          Dst:             str_append_data
        - Src:             'strescape.c:178,3'
          Dst:             str_append_tabescaped
        - Src:             'strescape.c:179,10'
          Dst:             str_c
    - functionName:    str_append_tabescaped
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - src
      BBCount:         11
      ICount:          88
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached:
        - i_unreached
        - str_append_data
        - strcspn
      functionUses:    14
      BranchProfiles:
        - Branch String:   'strescape.c:146,3'
          Branch Sides:
            - BranchSide:      'strescape.c:149,4'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:151,4'
              BranchSideFuncs:
                - str_append_data.9957
                - strcspn
                - str_append_data.9957
                - i_unreached
            - BranchSide:      'strescape.c:154,4'
              BranchSideFuncs:
                - str_append_data.9957
                - strcspn
                - str_append_data.9957
                - i_unreached
            - BranchSide:      'strescape.c:157,4'
              BranchSideFuncs:
                - str_append_data.9957
                - strcspn
                - str_append_data.9957
                - i_unreached
            - BranchSide:      'strescape.c:160,4'
              BranchSideFuncs:
                - str_append_data.9957
                - strcspn
                - str_append_data.9957
                - i_unreached
            - BranchSide:      'strescape.c:163,4'
              BranchSideFuncs:
                - i_unreached
      Callsites:
        - Src:             'strescape.c:142,20'
          Dst:             strcspn
        - Src:             'strescape.c:143,3'
          Dst:             str_append_data
        - Src:             'strescape.c:163,4'
          Dst:             i_unreached
        - Src:             'strescape.c:165,3'
          Dst:             str_append_data
    - functionName:    str_append_tabescaped_n
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - src_size
      BBCount:         14
      ICount:          107
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - str_append_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strescape.c:109,2'
          Branch Sides:
            - BranchSide:      'strescape.c:110,11'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_data.9957
            - BranchSide:      'strescape.c:133,18'
              BranchSideFuncs:
                - str_append_data.9957
        - Branch String:   'strescape.c:110,3'
          Branch Sides:
            - BranchSide:      'strescape.c:112,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_data.9957
            - BranchSide:      'strescape.c:115,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_data.9957
            - BranchSide:      'strescape.c:118,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_data.9957
            - BranchSide:      'strescape.c:121,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_data.9957
            - BranchSide:      'strescape.c:124,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_data.9957
            - BranchSide:      'strescape.c:127,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_data.9957
      Callsites:
        - Src:             'strescape.c:129,3'
          Dst:             str_append_data
        - Src:             'strescape.c:130,3'
          Dst:             str_append_data
        - Src:             'strescape.c:133,2'
          Dst:             str_append_data
    - functionName:    str_unescape_next
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - unescaped_r
      BBCount:         22
      ICount:          129
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - p_strdup_until
        - str_unescape
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strescape.c:86,2'
          Branch Sides:
            - BranchSide:      'strescape.c:87,8'
              BranchSideFuncs:
                - p_strdup_until
                - str_unescape
            - BranchSide:      'strescape.c:96,7'
              BranchSideFuncs:
                - p_strdup_until
                - str_unescape
        - Branch String:   'strescape.c:87,7'
          Branch Sides:
            - BranchSide:      'strescape.c:88,4'
              BranchSideFuncs:
                - p_strdup_until
                - str_unescape
            - BranchSide:      'strescape.c:89,13'
              BranchSideFuncs:
                - p_strdup_until
                - str_unescape
        - Branch String:   'strescape.c:90,8'
          Branch Sides:
            - BranchSide:      'strescape.c:91,5'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:92,14'
              BranchSideFuncs:
                - p_strdup_until
                - str_unescape
        - Branch String:   'strescape.c:96,6'
          Branch Sides:
            - BranchSide:      'strescape.c:97,3'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:98,27'
              BranchSideFuncs:
                - p_strdup_until
                - str_unescape
        - Branch String:   'strescape.c:100,17'
          Branch Sides:
            - BranchSide:      'strescape.c:100,53'
              BranchSideFuncs:
                - str_unescape
            - BranchSide:      'strescape.c:100,30'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strescape.c:98,12'
          Dst:             p_strdup_until
        - Src:             'strescape.c:100,40'
          Dst:             str_unescape
    - functionName:    str_unescape
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         17
      ICount:          99
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strescape.c:60,2'
          Branch Sides:
            - BranchSide:      'strescape.c:61,8'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:66,14'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:61,7'
          Branch Sides:
            - BranchSide:      'strescape.c:62,11'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:63,6'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:66,2'
          Branch Sides:
            - BranchSide:      'strescape.c:67,8'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:76,3'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:67,7'
          Branch Sides:
            - BranchSide:      'strescape.c:68,7'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:73,14'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:69,8'
          Branch Sides:
            - BranchSide:      'strescape.c:70,5'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:71,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_append_unescaped
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - src_size
      BBCount:         19
      ICount:          113
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - str_append_c
        - str_append_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strescape.c:38,2'
          Branch Sides:
            - BranchSide:      'strescape.c:38,2'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:39,3'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:39,3'
          Branch Sides:
            - BranchSide:      'strescape.c:40,8'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:44,19'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:40,8'
          Branch Sides:
            - BranchSide:      'strescape.c:41,5'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:42,3'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:46,7'
          Branch Sides:
            - BranchSide:      'strescape.c:47,8'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
            - BranchSide:      'strescape.c:51,11'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:47,8'
          Branch Sides:
            - BranchSide:      'strescape.c:48,5'
              BranchSideFuncs: []
            - BranchSide:      'strescape.c:49,4'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
      Callsites:
        - Src:             'strescape.c:44,3'
          Dst:             str_append_data
        - Src:             'strescape.c:49,4'
          Dst:             str_append_c
    - functionName:    str_append_escaped
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - src_size
      BBCount:         27
      ICount:          146
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - str_append_c
        - str_append_data
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strescape.c:18,2'
          Branch Sides:
            - BranchSide:      'strescape.c:19,7'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:24,18'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:19,7'
          Branch Sides:
            - BranchSide:      'strescape.c:19,7'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:20,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:19,7'
          Branch Sides:
            - BranchSide:      'strescape.c:19,7'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:20,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:19,7'
          Branch Sides:
            - BranchSide:      'strescape.c:20,4'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:21,2'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_data.9957
                - str_append_c.9959
        - Branch String:   'strescape.c:26,2'
          Branch Sides:
            - BranchSide:      'strescape.c:27,7'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
            - BranchSide:      'strescape.c:31,1'
              BranchSideFuncs: []
        - Branch String:   'strescape.c:27,7'
          Branch Sides:
            - BranchSide:      'strescape.c:27,7'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
            - BranchSide:      'strescape.c:28,4'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
        - Branch String:   'strescape.c:27,7'
          Branch Sides:
            - BranchSide:      'strescape.c:27,7'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
            - BranchSide:      'strescape.c:28,4'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
        - Branch String:   'strescape.c:27,7'
          Branch Sides:
            - BranchSide:      'strescape.c:28,4'
              BranchSideFuncs:
                - str_append_c.9959
                - str_append_data.9957
            - BranchSide:      'strescape.c:29,19'
              BranchSideFuncs:
                - str_append_data.9957
                - str_append_c.9959
      Callsites:
        - Src:             'strescape.c:24,2'
          Dst:             str_append_data
        - Src:             'strescape.c:28,4'
          Dst:             str_append_c
        - Src:             'strescape.c:29,3'
          Dst:             str_append_data
    - functionName:    str_nescape
      functionSourceFile: '/src/dovecot/src/lib/strescape.c'
      linkageType:     externalLinkage
      functionLinenumber: 8
      functionLinenumberEnd: 11
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_append_escaped
        - str_c
        - t_str_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strescape.c:9,19'
          Dst:             t_str_new
        - Src:             'strescape.c:10,2'
          Dst:             str_append_escaped
        - Src:             'strescape.c:11,9'
          Dst:             str_c
    - functionName:    p_realloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - mem
        - old_size
        - new_size
      BBCount:         11
      ICount:          89
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:129,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:129,6'
          Branch Sides:
            - BranchSide:      './mempool.h:131,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:133,6'
              BranchSideFuncs: []
        - Branch String:   './mempool.h:133,6'
          Branch Sides:
            - BranchSide:      './mempool.h:134,10'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:136,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:130,3'
          Dst:             i_panic
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    4
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    split_str_slow
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - pool
        - data
        - separators
        - spaces
      BBCount:         40
      ICount:          262
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - nearest_power
        - p_malloc
        - p_realloc
        - p_strdup
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:737,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:739,3'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
                - malloc_multiply_check.10136
                - p_malloc.10139
                - strchr
            - BranchSide:      'strfuncs.c:742,7'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
                - malloc_multiply_check.10136
                - p_malloc.10139
        - Branch String:   'strfuncs.c:739,24'
          Branch Sides:
            - BranchSide:      'strfuncs.c:739,34'
              BranchSideFuncs:
                - strchr
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
                - malloc_multiply_check.10136
                - p_malloc.10139
            - BranchSide:      'strfuncs.c:739,3'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
                - malloc_multiply_check.10136
                - p_malloc.10139
                - strchr
        - Branch String:   'strfuncs.c:739,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:740,8'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
                - malloc_multiply_check.10136
                - p_malloc.10139
                - strchr
            - BranchSide:      'strfuncs.c:741,2'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
                - malloc_multiply_check.10136
                - p_malloc.10139
        - Branch String:   'strfuncs.c:742,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:743,10'
              BranchSideFuncs:
                - malloc_multiply_check.10136
                - p_malloc.10139
            - BranchSide:      'strfuncs.c:745,17'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:751,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:752,14'
              BranchSideFuncs:
                - strchr
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10134
            - BranchSide:      'strfuncs.c:780,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:752,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:754,8'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
            - BranchSide:      'strfuncs.c:777,6'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:754,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:755,37'
              BranchSideFuncs:
                - nearest_power
                - p_realloc.10134
                - i_panic
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:763,5'
              BranchSideFuncs:
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10134
                - strchr
        - Branch String:   'strfuncs.c:764,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:765,5'
              BranchSideFuncs:
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10134
                - strchr
            - BranchSide:      'strfuncs.c:774,21'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:765,27'
          Branch Sides:
            - BranchSide:      'strfuncs.c:765,5'
              BranchSideFuncs:
                - strchr
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10134
            - BranchSide:      'strfuncs.c:766,19'
              BranchSideFuncs:
                - strchr
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:765,5'
          Branch Sides:
            - BranchSide:      'strfuncs.c:767,9'
              BranchSideFuncs:
                - i_panic
                - strchr
                - nearest_power
                - p_realloc.10134
                - strchr
            - BranchSide:      'strfuncs.c:770,9'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:770,9'
          Branch Sides:
            - BranchSide:      'strfuncs.c:771,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:772,4'
              BranchSideFuncs:
                - i_panic
                - strchr
                - strchr
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:780,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:780,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:781,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:739,27'
          Dst:             strchr
        - Src:             'strfuncs.c:743,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:743,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:745,8'
          Dst:             p_strdup
        - Src:             'strfuncs.c:748,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:748,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:752,7'
          Dst:             strchr
        - Src:             'strfuncs.c:755,23'
          Dst:             nearest_power
        - Src:             'strfuncs.c:756,13'
          Dst:             p_realloc
        - Src:             'strfuncs.c:766,12'
          Dst:             strchr
        - Src:             'strfuncs.c:780,2'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    11
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    p_strdup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - str
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - p_malloc
        - strlen
      functionUses:    114
      BranchProfiles:
        - Branch String:   'strfuncs.c:53,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:54,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:56,15'
              BranchSideFuncs:
                - strlen
                - p_malloc.10139
      Callsites:
        - Src:             'strfuncs.c:56,8'
          Dst:             strlen
        - Src:             'strfuncs.c:57,8'
          Dst:             p_malloc
    - functionName:    split_str_fast
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - pool
        - data
        - sep
      BBCount:         20
      ICount:          161
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - malloc_multiply_check
        - nearest_power
        - p_malloc
        - p_realloc
        - p_strdup
        - strchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:792,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:793,10'
              BranchSideFuncs:
                - malloc_multiply_check.10136
                - p_malloc.10139
            - BranchSide:      'strfuncs.c:795,17'
              BranchSideFuncs:
                - p_strdup
                - malloc_multiply_check.10136
                - p_malloc.10139
                - strchr
                - i_panic
                - i_panic
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:801,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:803,7'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
                - nearest_power
                - p_realloc.10134
            - BranchSide:      'strfuncs.c:814,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'strfuncs.c:803,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:804,36'
              BranchSideFuncs:
                - nearest_power
                - p_realloc.10134
                - strchr
                - i_panic
                - i_panic
            - BranchSide:      'strfuncs.c:811,7'
              BranchSideFuncs:
                - strchr
                - i_panic
                - i_panic
                - nearest_power
                - p_realloc.10134
        - Branch String:   'strfuncs.c:814,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:814,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:815,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:815,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:815,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:817,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:793,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:793,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:795,8'
          Dst:             p_strdup
        - Src:             'strfuncs.c:798,10'
          Dst:             malloc_multiply_check
        - Src:             'strfuncs.c:798,10'
          Dst:             p_malloc
        - Src:             'strfuncs.c:801,16'
          Dst:             strchr
        - Src:             'strfuncs.c:804,22'
          Dst:             nearest_power
        - Src:             'strfuncs.c:805,12'
          Dst:             p_realloc
        - Src:             'strfuncs.c:814,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:815,2'
          Dst:             i_panic
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_idx_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - idx
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:275,2'
          Branch Sides:
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './array.h:275,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './array.h:275,2'
          Dst:             i_panic
    - functionName:    array_is_created_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_array_const_string_join
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 999
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - arr
        - separator
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_count_i
        - array_idx_i
        - array_is_created_i
        - p_strarray_join_n
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:995,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:995,6'
              BranchSideFuncs:
                - array_idx_i.10147
                - array_count_i.10146
                - p_strarray_join_n
            - BranchSide:      'strfuncs.c:996,3'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:995,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:996,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:997,27'
              BranchSideFuncs:
                - array_idx_i.10147
                - array_count_i.10146
                - p_strarray_join_n
      Callsites:
        - Src:             'strfuncs.c:995,6'
          Dst:             array_is_created_i
        - Src:             'strfuncs.c:997,33'
          Dst:             array_idx_i
        - Src:             'strfuncs.c:997,51'
          Dst:             array_count_i
        - Src:             'strfuncs.c:997,9'
          Dst:             p_strarray_join_n
    - functionName:    p_strarray_join_n
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 907
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - arr
        - arr_len
        - separator
      BBCount:         16
      ICount:          162
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - nearest_power
        - p_memdup
        - strlen
        - t_buffer_alloc
        - t_buffer_get
        - t_buffer_reget
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:886,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:887,16'
              BranchSideFuncs:
                - strlen
                - p_memdup
                - t_buffer_alloc
                - nearest_power
                - t_buffer_reget
            - BranchSide:      'strfuncs.c:902,2'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
        - Branch String:   'strfuncs.c:889,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:890,30'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - p_memdup
                - t_buffer_alloc
                - strlen
            - BranchSide:      'strfuncs.c:894,7'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
                - strlen
                - nearest_power
                - t_buffer_reget
        - Branch String:   'strfuncs.c:894,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:895,11'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
                - strlen
                - nearest_power
                - t_buffer_reget
            - BranchSide:      'strfuncs.c:899,10'
              BranchSideFuncs:
                - p_memdup
                - t_buffer_alloc
                - strlen
                - nearest_power
                - t_buffer_reget
        - Branch String:   'strfuncs.c:903,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:904,19'
              BranchSideFuncs:
                - t_buffer_alloc
            - BranchSide:      'strfuncs.c:905,17'
              BranchSideFuncs:
                - t_buffer_alloc
      Callsites:
        - Src:             'strfuncs.c:881,12'
          Dst:             strlen
        - Src:             'strfuncs.c:883,8'
          Dst:             t_buffer_get
        - Src:             'strfuncs.c:887,9'
          Dst:             strlen
        - Src:             'strfuncs.c:890,16'
          Dst:             nearest_power
        - Src:             'strfuncs.c:891,10'
          Dst:             t_buffer_reget
        - Src:             'strfuncs.c:904,10'
          Dst:             p_memdup
        - Src:             'strfuncs.c:905,2'
          Dst:             t_buffer_alloc
    - functionName:    p_memdup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - data
        - size
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_malloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:66,8'
          Dst:             p_malloc
    - functionName:    dec2str_buf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 989
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - buffer
        - number
      BBCount:         14
      ICount:          88
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:986,23'
          Branch Sides:
            - BranchSide:      'strfuncs.c:986,26'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:986,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:986,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:984,20'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:988,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:988,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:988,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:988,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:988,2'
          Dst:             i_panic
    - functionName:    dec2str
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - number
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dec2str_buf
        - t_malloc_no0
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:974,21'
          Dst:             t_malloc_no0
        - Src:             'strfuncs.c:974,9'
          Dst:             dec2str_buf
    - functionName:    p_strarray_dup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 950
      functionLinenumberEnd: 969
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - arr
      BBCount:         15
      ICount:          137
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - p_malloc
        - strlen
      functionUses:    8
      BranchProfiles:
        - Branch String:   'strfuncs.c:957,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:958,41'
              BranchSideFuncs:
                - strlen
                - p_malloc.10139
                - i_panic
                - strlen
            - BranchSide:      'strfuncs.c:960,17'
              BranchSideFuncs:
                - p_malloc.10139
                - i_panic
                - strlen
        - Branch String:   'strfuncs.c:962,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:963,16'
              BranchSideFuncs:
                - strlen
                - i_panic
            - BranchSide:      'strfuncs.c:968,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:968,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:968,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:968,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:958,34'
          Dst:             strlen
        - Src:             'strfuncs.c:960,8'
          Dst:             p_malloc
        - Src:             'strfuncs.c:963,9'
          Dst:             strlen
        - Src:             'strfuncs.c:968,2'
          Dst:             i_panic
    - functionName:    str_array_icase_find
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 947
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - arr
        - value
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strfuncs.c:942,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:943,19'
              BranchSideFuncs:
                - strcasecmp
            - BranchSide:      'strfuncs.c:946,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:943,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:944,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:945,2'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'strfuncs.c:943,7'
          Dst:             strcasecmp
    - functionName:    str_array_find
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 938
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - arr
        - value
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strfuncs.c:933,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:934,15'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'strfuncs.c:937,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:934,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:935,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:936,2'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'strfuncs.c:934,7'
          Dst:             strcmp
    - functionName:    str_array_remove
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 916
      functionLinenumberEnd: 929
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - arr
        - value
      BBCount:         14
      ICount:          78
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:919,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:920,15'
              BranchSideFuncs:
                - strcmp
            - BranchSide:      'strfuncs.c:928,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:920,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:922,16'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:927,2'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'strfuncs.c:922,4'
          Branch Sides:
            - BranchSide:      'strfuncs.c:923,14'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:924,5'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:920,7'
          Dst:             strcmp
    - functionName:    t_strarray_join
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 912
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - arr
        - separator
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strarray_join_n
        - str_array_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:912,6'
          Dst:             str_array_length
        - Src:             'strfuncs.c:911,9'
          Dst:             p_strarray_join_n
    - functionName:    str_array_length
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 871
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - arr
      BBCount:         8
      ICount:          42
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    8
      BranchProfiles:
        - Branch String:   'strfuncs.c:864,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:865,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:867,13'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:867,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:868,8'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:870,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_strsplit_free
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - arr
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:856,2'
          Dst:             p_free_internal
        - Src:             'strfuncs.c:857,2'
          Dst:             p_free_internal
    - functionName:    p_strsplit_spaces
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - data
        - separators
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - split_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:851,9'
          Dst:             split_str
    - functionName:    split_str
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 829
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - pool
        - data
        - separators
        - spaces
      BBCount:         13
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - split_str_fast
        - split_str_slow
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strfuncs.c:823,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:823,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:825,6'
              BranchSideFuncs:
                - split_str_slow
                - split_str_fast
        - Branch String:   'strfuncs.c:825,28'
          Branch Sides:
            - BranchSide:      'strfuncs.c:825,32'
              BranchSideFuncs:
                - split_str_fast
                - split_str_slow
            - BranchSide:      'strfuncs.c:828,25'
              BranchSideFuncs:
                - split_str_slow
        - Branch String:   'strfuncs.c:825,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:826,25'
              BranchSideFuncs:
                - split_str_slow
            - BranchSide:      'strfuncs.c:828,25'
              BranchSideFuncs:
                - split_str_slow
      Callsites:
        - Src:             'strfuncs.c:823,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:826,10'
          Dst:             split_str_fast
        - Src:             'strfuncs.c:828,10'
          Dst:             split_str_slow
    - functionName:    p_strsplit
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - data
        - separators
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - split_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:845,9'
          Dst:             split_str
    - functionName:    t_strsplit_spaces
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 838
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - separators
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - split_str
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:839,24'
          Dst:             split_str
    - functionName:    t_strsplit
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - separators
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - split_str
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:833,24'
          Dst:             split_str
    - functionName:    t_split_key_value
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - arg
        - separator
        - key_r
        - value_r
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
        - t_strdup_until
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:720,13'
          Branch Sides:
            - BranchSide:      'strfuncs.c:720,3'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:720,41'
              BranchSideFuncs:
                - strchr
                - t_strdup_until
        - Branch String:   'strfuncs.c:721,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:722,27'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:725,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:720,34'
          Dst:             strchr
        - Src:             'strfuncs.c:722,12'
          Dst:             t_strdup_until
    - functionName:    t_strdup_until
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - start
        - end
      BBCount:         7
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - t_malloc_no0
      functionUses:    21
      BranchProfiles:
        - Branch String:   'strfuncs.c:276,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:276,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:276,2'
              BranchSideFuncs:
                - t_malloc_no0
      Callsites:
        - Src:             'strfuncs.c:276,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:280,8'
          Dst:             t_malloc_no0
    - functionName:    i_memcspn
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 696
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - data_len
        - reject
        - reject_len
      BBCount:         32
      ICount:          177
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - memchr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:700,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:700,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
            - BranchSide:      'strfuncs.c:700,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
        - Branch String:   'strfuncs.c:700,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:700,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:701,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:701,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:701,2'
              BranchSideFuncs:
                - memchr
                - i_panic
            - BranchSide:      'strfuncs.c:701,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:701,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:701,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:703,6'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:703,22'
          Branch Sides:
            - BranchSide:      'strfuncs.c:703,25'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:704,10'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:703,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:704,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:708,14'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:708,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:710,11'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:714,9'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:711,20'
          Branch Sides:
            - BranchSide:      'strfuncs.c:711,23'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:713,2'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:711,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:712,10'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:713,2'
              BranchSideFuncs:
                - memchr
      Callsites:
        - Src:             'strfuncs.c:700,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:701,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:710,4'
          Dst:             memchr
    - functionName:    i_memspn
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 692
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - data_len
        - accept
        - accept_len
      BBCount:         27
      ICount:          134
      EdgeCount:       32
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - memchr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:681,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:681,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
            - BranchSide:      'strfuncs.c:681,2'
              BranchSideFuncs:
                - memchr
                - i_panic
                - i_panic
        - Branch String:   'strfuncs.c:681,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:681,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:682,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:682,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:682,2'
              BranchSideFuncs:
                - memchr
                - i_panic
            - BranchSide:      'strfuncs.c:682,2'
              BranchSideFuncs:
                - memchr
                - i_panic
        - Branch String:   'strfuncs.c:682,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:682,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:683,9'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:685,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:686,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:687,2'
              BranchSideFuncs:
                - memchr
        - Branch String:   'strfuncs.c:687,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:688,14'
              BranchSideFuncs:
                - memchr
            - BranchSide:      'strfuncs.c:691,9'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:688,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:689,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:690,2'
              BranchSideFuncs:
                - memchr
      Callsites:
        - Src:             'strfuncs.c:681,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:682,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:688,7'
          Dst:             memchr
    - functionName:    str_begins_icase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle
        - suffix_r
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_match_icase
      functionUses:    3
      BranchProfiles:
        - Branch String:   'strfuncs.c:671,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:672,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:673,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:670,22'
          Dst:             str_match_icase
    - functionName:    str_match_icase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - p1
        - p2
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - tolower
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:650,23'
          Branch Sides:
            - BranchSide:      'strfuncs.c:650,26'
              BranchSideFuncs:
                - tolower
                - tolower
            - BranchSide:      'strfuncs.c:650,2'
              BranchSideFuncs:
                - tolower
                - tolower
        - Branch String:   'strfuncs.c:650,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:651,4'
              BranchSideFuncs:
                - tolower
                - tolower
            - BranchSide:      'strfuncs.c:653,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:650,26'
          Dst:             tolower
        - Src:             'strfuncs.c:650,46'
          Dst:             tolower
    - functionName:    str_begins
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle
        - suffix_r
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_match
      functionUses:    8
      BranchProfiles:
        - Branch String:   'strfuncs.c:660,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:661,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:662,14'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:659,22'
          Dst:             str_match
    - functionName:    str_match
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - p1
        - p2
      BBCount:         7
      ICount:          55
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strfuncs.c:640,22'
          Branch Sides:
            - BranchSide:      'strfuncs.c:640,25'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:640,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:640,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:641,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:643,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_equals_timing_almost_safe
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - s1
        - s2
      BBCount:         8
      ICount:          86
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:625,28'
          Branch Sides:
            - BranchSide:      'strfuncs.c:625,31'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:625,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:625,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:626,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:627,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    mem_equals_timing_safe
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 617
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - p1
        - p2
        - size
      BBCount:         5
      ICount:          63
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:611,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:612,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:616,33'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_strcasecmp_p
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 602
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - p1
        - p2
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:602,9'
          Dst:             strcasecmp
    - functionName:    i_strcmp_p
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - p1
        - p2
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:597,9'
          Dst:             strcmp
    - functionName:    i_memcasecmp
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - p1
        - p2
        - size
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - toupper
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:584,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:585,9'
              BranchSideFuncs:
                - toupper
                - toupper
            - BranchSide:      'strfuncs.c:592,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:586,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:587,11'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:589,5'
              BranchSideFuncs:
                - toupper
                - toupper
      Callsites:
        - Src:             'strfuncs.c:585,9'
          Dst:             toupper
        - Src:             'strfuncs.c:585,26'
          Dst:             toupper
    - functionName:    null_strcasecmp
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - s1
        - s2
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    5
      BranchProfiles:
        - Branch String:   'strfuncs.c:570,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:571,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:572,6'
              BranchSideFuncs:
                - strcasecmp
        - Branch String:   'strfuncs.c:572,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:573,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:575,20'
              BranchSideFuncs:
                - strcasecmp
      Callsites:
        - Src:             'strfuncs.c:575,9'
          Dst:             strcasecmp
    - functionName:    null_strcmp
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 559
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - s1
        - s2
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    12
      BranchProfiles:
        - Branch String:   'strfuncs.c:560,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:561,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:562,6'
              BranchSideFuncs:
                - strcmp
        - Branch String:   'strfuncs.c:562,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:563,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:565,16'
              BranchSideFuncs:
                - strcmp
      Callsites:
        - Src:             'strfuncs.c:565,9'
          Dst:             strcmp
    - functionName:    p_str_rtrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 556
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - str
        - chars
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - p_strdup_until
        - str_trim_parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:553,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:554,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:555,24'
              BranchSideFuncs:
                - p_strdup_until
      Callsites:
        - Src:             'strfuncs.c:552,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:555,9'
          Dst:             p_strdup_until
    - functionName:    str_trim_parse
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - chars
        - sides
        - begin_r
        - end_r
      BBCount:         28
      ICount:          165
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - strchr
        - strlen
      functionUses:    5
      BranchProfiles:
        - Branch String:   'strfuncs.c:471,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:472,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:474,6'
              BranchSideFuncs:
                - strchr
                - strchr
        - Branch String:   'strfuncs.c:475,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:476,3'
              BranchSideFuncs:
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:481,10'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:476,19'
          Branch Sides:
            - BranchSide:      'strfuncs.c:476,29'
              BranchSideFuncs:
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:476,3'
              BranchSideFuncs:
                - strchr
                - strchr
        - Branch String:   'strfuncs.c:476,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:477,5'
              BranchSideFuncs:
                - strchr
                - strchr
            - BranchSide:      'strfuncs.c:478,7'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:478,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:479,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:480,2'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:484,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:485,3'
              BranchSideFuncs:
                - strchr
            - BranchSide:      'strfuncs.c:490,8'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:485,20'
          Branch Sides:
            - BranchSide:      'strfuncs.c:485,30'
              BranchSideFuncs:
                - strchr
            - BranchSide:      'strfuncs.c:485,3'
              BranchSideFuncs:
                - strchr
        - Branch String:   'strfuncs.c:485,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:486,5'
              BranchSideFuncs:
                - strchr
            - BranchSide:      'strfuncs.c:487,7'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:487,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:488,4'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:489,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:470,15'
          Dst:             strlen
        - Src:             'strfuncs.c:476,22'
          Dst:             strchr
        - Src:             'strfuncs.c:485,23'
          Dst:             strchr
    - functionName:    p_strdup_until
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - start
        - end
      BBCount:         7
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - p_malloc
      functionUses:    11
      BranchProfiles:
        - Branch String:   'strfuncs.c:84,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:84,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:84,2'
              BranchSideFuncs:
                - p_malloc.10139
      Callsites:
        - Src:             'strfuncs.c:84,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:88,8'
          Dst:             p_malloc
    - functionName:    t_str_rtrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - chars
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_trim_parse
        - t_strdup_until
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:543,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:544,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:545,24'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'strfuncs.c:542,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:545,9'
          Dst:             t_strdup_until
    - functionName:    p_str_ltrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 534
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - str
        - chars
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup
        - str_ltrim
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:535,24'
          Dst:             str_ltrim
        - Src:             'strfuncs.c:535,9'
          Dst:             p_strdup
    - functionName:    str_ltrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - chars
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_trim_parse
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:523,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:524,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:525,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:522,2'
          Dst:             str_trim_parse
    - functionName:    t_str_ltrim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - chars
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_ltrim
        - t_strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:530,18'
          Dst:             str_ltrim
        - Src:             'strfuncs.c:530,9'
          Dst:             t_strdup
    - functionName:    t_strdup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_strdup_noconst
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:253,9'
          Dst:             t_strdup_noconst
    - functionName:    t_strdup_noconst
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - t_memdup_noconst
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strfuncs.c:258,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:259,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:260,26'
              BranchSideFuncs:
                - strlen
                - t_memdup_noconst
      Callsites:
        - Src:             'strfuncs.c:260,31'
          Dst:             strlen
        - Src:             'strfuncs.c:260,9'
          Dst:             t_memdup_noconst
    - functionName:    t_memdup_noconst
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_malloc_no0
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:241,14'
          Dst:             t_malloc_no0
    - functionName:    p_str_trim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - str
        - chars
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - p_strdup_until
        - str_trim_parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:513,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:514,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:515,24'
              BranchSideFuncs:
                - p_strdup_until
      Callsites:
        - Src:             'strfuncs.c:511,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:515,9'
          Dst:             p_strdup_until
    - functionName:    t_str_trim
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - chars
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_trim_parse
        - t_strdup_until
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:502,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:503,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:504,24'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'strfuncs.c:500,2'
          Dst:             str_trim_parse
        - Src:             'strfuncs.c:504,9'
          Dst:             t_strdup_until
    - functionName:    i_strstr_arr
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needles
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strstr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strfuncs.c:456,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:457,21'
              BranchSideFuncs:
                - strstr
            - BranchSide:      'strfuncs.c:459,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:457,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:457,45'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:458,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:457,14'
          Dst:             strstr
    - functionName:    t_str_ucase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - str_ucase
        - t_strdup_noconst
      functionUses:    9
      BranchProfiles:
        - Branch String:   'strfuncs.c:448,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:448,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:448,2'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_ucase
      Callsites:
        - Src:             'strfuncs.c:448,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:450,19'
          Dst:             t_strdup_noconst
        - Src:             'strfuncs.c:450,9'
          Dst:             str_ucase
    - functionName:    str_ucase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - toupper
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:425,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:426,8'
              BranchSideFuncs:
                - toupper
            - BranchSide:      'strfuncs.c:427,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:426,8'
          Dst:             toupper
    - functionName:    t_str_lcase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - str_lcase
        - t_strdup_noconst
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:441,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:441,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:441,2'
              BranchSideFuncs:
                - t_strdup_noconst
                - str_lcase
      Callsites:
        - Src:             'strfuncs.c:441,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:443,19'
          Dst:             t_strdup_noconst
        - Src:             'strfuncs.c:443,9'
          Dst:             str_lcase
    - functionName:    str_lcase
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - tolower
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:434,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:435,8'
              BranchSideFuncs:
                - tolower
            - BranchSide:      'strfuncs.c:436,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:435,8'
          Dst:             tolower
    - functionName:    i_strocpy
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - dstsize
      BBCount:         10
      ICount:          73
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:409,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:410,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:412,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:412,22'
          Branch Sides:
            - BranchSide:      'strfuncs.c:412,25'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:412,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:412,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:413,17'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:417,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_truncate
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - len
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_set_used_size
        - str_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   './str.h:90,6'
          Branch Sides:
            - BranchSide:      './str.h:90,6'
              BranchSideFuncs:
                - buffer_set_used_size
            - BranchSide:      './str.h:91,24'
              BranchSideFuncs:
                - buffer_set_used_size
      Callsites:
        - Src:             './str.h:90,6'
          Dst:             str_len
        - Src:             './str.h:91,3'
          Dst:             buffer_set_used_size
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:39,2'
          Dst:             buffer_append
    - functionName:    t_str_oneline
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         31
      ICount:          185
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - str_append_c
        - str_append_data
        - str_c
        - str_len
        - str_truncate
        - strlen
        - strpbrk
        - t_str_new
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:365,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:366,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:368,15'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_c.10222
                - str_append_data.10223
                - str_append_data.10223
        - Branch String:   'strfuncs.c:373,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:374,12'
              BranchSideFuncs:
                - str_append_c.10222
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_data.10223
                - str_append_data.10223
            - BranchSide:      'strfuncs.c:400,6'
              BranchSideFuncs:
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
        - Branch String:   'strfuncs.c:374,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:376,8'
              BranchSideFuncs:
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_c.10222
                - str_append_data.10223
                - str_append_data.10223
            - BranchSide:      'strfuncs.c:382,8'
              BranchSideFuncs:
                - str_append_c.10222
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_data.10223
                - str_append_data.10223
            - BranchSide:      'strfuncs.c:394,13'
              BranchSideFuncs:
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_c.10222
                - str_append_data.10223
                - str_append_data.10223
        - Branch String:   'strfuncs.c:376,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:377,21'
              BranchSideFuncs:
                - str_append_data.10223
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_c.10222
                - str_append_data.10223
            - BranchSide:      'strfuncs.c:379,11'
              BranchSideFuncs:
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_c.10222
                - str_append_data.10223
                - str_append_data.10223
        - Branch String:   'strfuncs.c:382,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:383,21'
              BranchSideFuncs:
                - str_append_data.10223
                - str_append_c.10222
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_data.10223
            - BranchSide:      'strfuncs.c:384,8'
              BranchSideFuncs:
                - str_append_c.10222
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_data.10223
                - str_append_data.10223
        - Branch String:   'strfuncs.c:384,8'
          Branch Sides:
            - BranchSide:      'strfuncs.c:386,4'
              BranchSideFuncs:
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_c.10222
                - str_append_data.10223
                - str_append_data.10223
            - BranchSide:      'strfuncs.c:388,5'
              BranchSideFuncs:
                - str_append_c.10222
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_len.10221
                - str_truncate.10220
                - str_append_data.10223
                - str_append_data.10223
        - Branch String:   'strfuncs.c:400,15'
          Branch Sides:
            - BranchSide:      'strfuncs.c:400,26'
              BranchSideFuncs:
                - str_len.10221
                - str_c
                - str_append_data.10223
                - str_len.10221
                - str_truncate.10220
            - BranchSide:      'strfuncs.c:402,11'
              BranchSideFuncs:
                - str_c
                - str_append_data.10223
        - Branch String:   'strfuncs.c:400,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:401,16'
              BranchSideFuncs:
                - str_len.10221
                - str_truncate.10220
                - str_c
            - BranchSide:      'strfuncs.c:402,11'
              BranchSideFuncs:
                - str_c
                - str_append_data.10223
      Callsites:
        - Src:             'strfuncs.c:365,6'
          Dst:             strpbrk
        - Src:             'strfuncs.c:368,8'
          Dst:             strlen
        - Src:             'strfuncs.c:369,8'
          Dst:             t_str_new
        - Src:             'strfuncs.c:377,5'
          Dst:             str_append_data
        - Src:             'strfuncs.c:383,5'
          Dst:             str_append_data
        - Src:             'strfuncs.c:388,5'
          Dst:             str_append_c
        - Src:             'strfuncs.c:400,18'
          Dst:             str_len
        - Src:             'strfuncs.c:401,21'
          Dst:             str_len
        - Src:             'strfuncs.c:401,3'
          Dst:             str_truncate
        - Src:             'strfuncs.c:403,3'
          Dst:             str_append_data
        - Src:             'strfuncs.c:404,9'
          Dst:             str_c
    - functionName:    t_str_replace
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - str
        - from
        - to
      BBCount:         13
      ICount:          103
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - strchr
        - strlen
        - t_malloc_no0
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:343,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:344,10'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:346,15'
              BranchSideFuncs:
                - strlen
                - t_malloc_no0
        - Branch String:   'strfuncs.c:348,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:349,7'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:354,2'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:349,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:350,13'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:352,13'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:343,6'
          Dst:             strchr
        - Src:             'strfuncs.c:346,8'
          Dst:             strlen
        - Src:             'strfuncs.c:347,8'
          Dst:             t_malloc_no0
    - functionName:    t_strcut
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - cutchar
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - t_strdup_until
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:330,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:331,8'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:335,9'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:331,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:332,26'
              BranchSideFuncs:
                - t_strdup_until
            - BranchSide:      'strfuncs.c:333,2'
              BranchSideFuncs:
                - t_strdup_until
      Callsites:
        - Src:             'strfuncs.c:332,11'
          Dst:             t_strdup_until
    - functionName:    t_strconcat
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str1
      BBCount:         7
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - t_buffer_alloc
        - vstrconcat
      functionUses:    31
      BranchProfiles:
        - Branch String:   'strfuncs.c:315,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:315,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:315,2'
              BranchSideFuncs:
                - vstrconcat
                - t_buffer_alloc
      Callsites:
        - Src:             'strfuncs.c:315,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:319,8'
          Dst:             vstrconcat
        - Src:             'strfuncs.c:320,2'
          Dst:             t_buffer_alloc
    - functionName:    vstrconcat
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str1
        - args
        - ret_len
      BBCount:         21
      ICount:          157
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
        - nearest_power
        - strlen
        - t_buffer_get
        - t_buffer_reget
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strfuncs.c:187,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:187,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:189,8'
              BranchSideFuncs:
                - t_buffer_get
                - strlen
                - i_panic
                - nearest_power
                - t_buffer_reget
        - Branch String:   'strfuncs.c:197,7'
          Branch Sides:
            - BranchSide:      'strfuncs.c:199,28'
              BranchSideFuncs:
                - nearest_power
                - t_buffer_reget
                - i_panic
                - strlen
            - BranchSide:      'strfuncs.c:203,10'
              BranchSideFuncs:
                - i_panic
                - strlen
                - nearest_power
                - t_buffer_reget
        - Branch String:   'strfuncs.c:206,9'
          Branch Sides:
            - BranchSide:      'strfuncs.c:207,11'
              BranchSideFuncs:
                - i_panic
                - strlen
                - nearest_power
                - t_buffer_reget
            - BranchSide:      'strfuncs.c:207,11'
              BranchSideFuncs:
                - i_panic
                - strlen
                - nearest_power
                - t_buffer_reget
        - Branch String:   'strfuncs.c:207,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:195,16'
              BranchSideFuncs:
                - strlen
                - i_panic
                - nearest_power
                - t_buffer_reget
            - BranchSide:      'strfuncs.c:209,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'strfuncs.c:209,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:209,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:209,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:187,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:191,9'
          Dst:             t_buffer_get
        - Src:             'strfuncs.c:195,9'
          Dst:             strlen
        - Src:             'strfuncs.c:199,14'
          Dst:             nearest_power
        - Src:             'strfuncs.c:200,11'
          Dst:             t_buffer_reget
        - Src:             'strfuncs.c:209,2'
          Dst:             i_panic
    - functionName:    t_strdup_vprintf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
        - args
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup_vprintf
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:306,9'
          Dst:             p_strdup_vprintf
    - functionName:    p_strdup_vprintf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - format
        - args
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - p_malloc
        - t_buffer_alloc
        - t_noalloc_strdup_vprintf
      functionUses:    5
      BranchProfiles:
        - Branch String:   'strfuncs.c:171,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:172,18'
              BranchSideFuncs:
                - t_buffer_alloc
            - BranchSide:      'strfuncs.c:175,18'
              BranchSideFuncs:
                - p_malloc.10139
      Callsites:
        - Src:             'strfuncs.c:170,8'
          Dst:             t_noalloc_strdup_vprintf
        - Src:             'strfuncs.c:172,3'
          Dst:             t_buffer_alloc
        - Src:             'strfuncs.c:175,9'
          Dst:             p_malloc
    - functionName:    t_noalloc_strdup_vprintf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
        - args
        - size_r
      BBCount:         14
      ICount:          117
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - printf_format_fix_get_len
        - t_buffer_get
        - vsnprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strfuncs.c:147,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:147,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:149,12'
              BranchSideFuncs:
                - t_buffer_get
                - vsnprintf
                - i_panic
        - Branch String:   'strfuncs.c:150,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:150,6'
              BranchSideFuncs:
                - t_buffer_get
                - vsnprintf
                - i_panic
            - BranchSide:      'strfuncs.c:153,23'
              BranchSideFuncs:
                - t_buffer_get
                - vsnprintf
                - i_panic
        - Branch String:   'strfuncs.c:155,3'
          Branch Sides:
            - BranchSide:      'strfuncs.c:155,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:156,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:142,11'
          Dst:             printf_format_fix_get_len
        - Src:             'strfuncs.c:145,8'
          Dst:             t_buffer_get
        - Src:             'strfuncs.c:146,8'
          Dst:             vsnprintf
        - Src:             'strfuncs.c:147,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:153,9'
          Dst:             t_buffer_get
        - Src:             'strfuncs.c:154,9'
          Dst:             vsnprintf
        - Src:             'strfuncs.c:155,3'
          Dst:             i_panic
    - functionName:    t_strdup_printf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - format
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup_vprintf
      functionUses:    240
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:298,8'
          Dst:             p_strdup_vprintf
    - functionName:    t_strndup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - max_chars
      BBCount:         7
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - p_strndup
      functionUses:    10
      BranchProfiles:
        - Branch String:   'strfuncs.c:288,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:288,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:288,2'
              BranchSideFuncs:
                - p_strndup
      Callsites:
        - Src:             'strfuncs.c:288,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:289,9'
          Dst:             p_strndup
    - functionName:    p_strndup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - str
        - max_chars
      BBCount:         14
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - memchr
        - p_malloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'strfuncs.c:99,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:99,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:100,2'
              BranchSideFuncs:
                - memchr
                - p_malloc.10139
                - i_panic
        - Branch String:   'strfuncs.c:100,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:100,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:102,13'
              BranchSideFuncs:
                - memchr
                - p_malloc.10139
        - Branch String:   'strfuncs.c:103,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:104,9'
              BranchSideFuncs:
                - p_malloc.10139
            - BranchSide:      'strfuncs.c:106,9'
              BranchSideFuncs:
                - p_malloc.10139
      Callsites:
        - Src:             'strfuncs.c:99,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:100,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:102,6'
          Dst:             memchr
        - Src:             'strfuncs.c:108,8'
          Dst:             p_malloc
    - functionName:    t_strdup_empty
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - t_strdup
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strfuncs.c:265,18'
          Branch Sides:
            - BranchSide:      'strfuncs.c:265,22'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:266,3'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:265,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:266,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:268,18'
              BranchSideFuncs:
                - t_strdup
      Callsites:
        - Src:             'strfuncs.c:268,9'
          Dst:             t_strdup
    - functionName:    t_memdup
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - t_memdup_noconst
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:248,9'
          Dst:             t_memdup_noconst
    - functionName:    p_strconcat
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - str1
      BBCount:         10
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - p_malloc
        - t_buffer_alloc
        - vstrconcat
      functionUses:    3
      BranchProfiles:
        - Branch String:   'strfuncs.c:222,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:222,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:224,2'
              BranchSideFuncs:
                - vstrconcat
                - p_malloc.10139
                - vstrconcat
                - t_buffer_alloc
        - Branch String:   'strfuncs.c:226,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:227,20'
              BranchSideFuncs:
                - vstrconcat
                - t_buffer_alloc
            - BranchSide:      'strfuncs.c:230,21'
              BranchSideFuncs:
                - vstrconcat
                - p_malloc.10139
      Callsites:
        - Src:             'strfuncs.c:222,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:227,9'
          Dst:             vstrconcat
        - Src:             'strfuncs.c:228,3'
          Dst:             t_buffer_alloc
        - Src:             'strfuncs.c:230,10'
          Dst:             vstrconcat
        - Src:             'strfuncs.c:231,9'
          Dst:             p_malloc
    - functionName:    p_strdup_printf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - format
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - p_strdup_vprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'strfuncs.c:119,8'
          Dst:             p_strdup_vprintf
    - functionName:    p_strdup_empty
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - str
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - p_strdup
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strfuncs.c:73,18'
          Branch Sides:
            - BranchSide:      'strfuncs.c:73,22'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:74,3'
              BranchSideFuncs: []
        - Branch String:   'strfuncs.c:73,6'
          Branch Sides:
            - BranchSide:      'strfuncs.c:74,3'
              BranchSideFuncs: []
            - BranchSide:      'strfuncs.c:76,18'
              BranchSideFuncs:
                - p_strdup
      Callsites:
        - Src:             'strfuncs.c:76,9'
          Dst:             p_strdup
    - functionName:    i_snprintf
      functionSourceFile: '/src/dovecot/src/lib/strfuncs.c'
      linkageType:     externalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - dest
        - max_chars
        - format
      BBCount:         11
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - printf_format_fix_unsafe
        - vsnprintf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strfuncs.c:37,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:37,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:39,2'
              BranchSideFuncs:
                - printf_format_fix_unsafe
                - vsnprintf
                - i_panic
        - Branch String:   'strfuncs.c:44,2'
          Branch Sides:
            - BranchSide:      'strfuncs.c:44,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'strfuncs.c:44,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strfuncs.c:37,2'
          Dst:             i_panic
        - Src:             'strfuncs.c:40,35'
          Dst:             printf_format_fix_unsafe
        - Src:             'strfuncs.c:40,8'
          Dst:             vsnprintf
        - Src:             'strfuncs.c:44,2'
          Dst:             i_panic
    - functionName:    str_num_error
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         10
      ICount:          49
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - str_is_numeric
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strnum.c:481,6'
          Branch Sides:
            - BranchSide:      'strnum.c:482,23'
              BranchSideFuncs:
                - str_is_numeric
            - BranchSide:      'strnum.c:486,23'
              BranchSideFuncs:
                - str_is_numeric
        - Branch String:   'strnum.c:482,7'
          Branch Sides:
            - BranchSide:      'strnum.c:483,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:484,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:486,7'
          Branch Sides:
            - BranchSide:      'strnum.c:487,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:488,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:482,8'
          Dst:             str_is_numeric
        - Src:             'strnum.c:486,8'
          Dst:             str_is_numeric
    - functionName:    str_is_numeric
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 7
      functionLinenumberEnd: 18
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - end_char
      BBCount:         18
      ICount:          93
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strnum.c:8,19'
          Branch Sides:
            - BranchSide:      'strnum.c:8,23'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:9,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:8,6'
          Branch Sides:
            - BranchSide:      'strnum.c:9,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:11,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:11,22'
          Branch Sides:
            - BranchSide:      'strnum.c:11,26'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:11,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:11,2'
          Branch Sides:
            - BranchSide:      'strnum.c:12,8'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:17,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:12,18'
          Branch Sides:
            - BranchSide:      'strnum.c:12,22'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:13,4'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:12,7'
          Branch Sides:
            - BranchSide:      'strnum.c:13,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:14,6'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_to_double
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strtod
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:468,6'
          Branch Sides:
            - BranchSide:      'strnum.c:469,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:471,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:467,15'
          Dst:             strtod
    - functionName:    strtod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_to_float
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strtof
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:457,6'
          Branch Sides:
            - BranchSide:      'strnum.c:458,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:460,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:456,14'
          Dst:             strtof
    - functionName:    strtof
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      float
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_parse_uoff
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:447,1'
          Branch Sides:
            - BranchSide:      'strnum.c:447,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:447,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:447,1'
          Branch Sides:
            - BranchSide:      'strnum.c:447,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:447,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:447,1'
          Dst:             str_parse_uintmax
    - functionName:    str_parse_uintmax
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         24
      ICount:          132
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    10
      BranchProfiles:
        - Branch String:   'strnum.c:87,17'
          Branch Sides:
            - BranchSide:      'strnum.c:87,21'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:88,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:87,6'
          Branch Sides:
            - BranchSide:      'strnum.c:88,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:90,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:91,7'
          Branch Sides:
            - BranchSide:      'strnum.c:92,8'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:97,7'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:92,8'
          Branch Sides:
            - BranchSide:      'strnum.c:93,5'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:94,21'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:94,8'
          Branch Sides:
            - BranchSide:      'strnum.c:95,5'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:96,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:99,23'
          Branch Sides:
            - BranchSide:      'strnum.c:99,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:99,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:99,2'
          Branch Sides:
            - BranchSide:      'strnum.c:91,7'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:101,6'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:101,6'
          Branch Sides:
            - BranchSide:      'strnum.c:102,13'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:103,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_to_time
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_to_intmax
      functionUses:    3
      BranchProfiles:
        - Branch String:   'strnum.c:440,6'
          Branch Sides:
            - BranchSide:      'strnum.c:441,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:443,19'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:440,6'
          Dst:             str_to_intmax
    - functionName:    str_to_intmax
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_intmax
      functionUses:    14
      BranchProfiles:
        - Branch String:   'strnum.c:346,17'
          Branch Sides:
            - BranchSide:      'strnum.c:346,22'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:347,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:346,6'
          Branch Sides:
            - BranchSide:      'strnum.c:347,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:348,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:345,12'
          Dst:             str_parse_intmax
    - functionName:    str_parse_intmax
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         16
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - str_parse_uintmax
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strnum.c:323,6'
          Branch Sides:
            - BranchSide:      'strnum.c:324,7'
              BranchSideFuncs:
                - str_parse_uintmax
            - BranchSide:      'strnum.c:327,24'
              BranchSideFuncs:
                - str_parse_uintmax
        - Branch String:   'strnum.c:327,6'
          Branch Sides:
            - BranchSide:      'strnum.c:328,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:330,7'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:330,6'
          Branch Sides:
            - BranchSide:      'strnum.c:331,7'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:335,7'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:331,7'
          Branch Sides:
            - BranchSide:      'strnum.c:332,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:333,22'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:335,7'
          Branch Sides:
            - BranchSide:      'strnum.c:336,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:337,23'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:327,6'
          Dst:             str_parse_uintmax
    - functionName:    str_to_uoff
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strnum.c:427,6'
          Branch Sides:
            - BranchSide:      'strnum.c:428,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:430,6'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:430,6'
          Branch Sides:
            - BranchSide:      'strnum.c:431,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:432,19'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:427,6'
          Dst:             str_to_uintmax
    - functionName:    str_to_uintmax
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax
      functionUses:    15
      BranchProfiles:
        - Branch String:   'strnum.c:111,17'
          Branch Sides:
            - BranchSide:      'strnum.c:111,22'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:112,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:111,6'
          Branch Sides:
            - BranchSide:      'strnum.c:112,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:113,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:110,12'
          Dst:             str_parse_uintmax
    - functionName:    str_to_ino
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
        - verify_xid
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:414,6'
          Branch Sides:
            - BranchSide:      'strnum.c:415,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:417,17'
              BranchSideFuncs:
                - verify_xid
        - Branch String:   'strnum.c:417,6'
          Branch Sides:
            - BranchSide:      'strnum.c:418,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:419,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:414,6'
          Dst:             str_to_uintmax
        - Src:             'strnum.c:417,6'
          Dst:             verify_xid
    - functionName:    verify_xid
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - l
        - result_size
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'strnum.c:363,6'
          Branch Sides:
            - BranchSide:      'strnum.c:364,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:365,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_to_pid
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
        - verify_xid
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:401,6'
          Branch Sides:
            - BranchSide:      'strnum.c:402,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:404,17'
              BranchSideFuncs:
                - verify_xid
        - Branch String:   'strnum.c:404,6'
          Branch Sides:
            - BranchSide:      'strnum.c:405,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:406,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:401,6'
          Dst:             str_to_uintmax
        - Src:             'strnum.c:404,6'
          Dst:             verify_xid
    - functionName:    str_to_gid
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
        - verify_xid
      functionUses:    5
      BranchProfiles:
        - Branch String:   'strnum.c:385,6'
          Branch Sides:
            - BranchSide:      'strnum.c:386,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:390,17'
              BranchSideFuncs:
                - verify_xid
        - Branch String:   'strnum.c:390,6'
          Branch Sides:
            - BranchSide:      'strnum.c:391,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:393,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:385,6'
          Dst:             str_to_uintmax
        - Src:             'strnum.c:390,6'
          Dst:             verify_xid
    - functionName:    str_to_uid
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
        - verify_xid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strnum.c:372,6'
          Branch Sides:
            - BranchSide:      'strnum.c:373,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:375,17'
              BranchSideFuncs:
                - verify_xid
        - Branch String:   'strnum.c:375,6'
          Branch Sides:
            - BranchSide:      'strnum.c:376,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:377,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:372,6'
          Dst:             str_to_uintmax
        - Src:             'strnum.c:375,6'
          Dst:             verify_xid
    - functionName:    str_to_int64
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:315,1'
          Branch Sides:
            - BranchSide:      'strnum.c:315,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:315,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:315,1'
          Branch Sides:
            - BranchSide:      'strnum.c:315,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:315,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:315,1'
          Branch Sides:
            - BranchSide:      'strnum.c:315,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:315,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:315,1'
          Dst:             str_to_intmax
    - functionName:    str_to_int32
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:314,1'
          Branch Sides:
            - BranchSide:      'strnum.c:314,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:314,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:314,1'
          Branch Sides:
            - BranchSide:      'strnum.c:314,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:314,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:314,1'
          Branch Sides:
            - BranchSide:      'strnum.c:314,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:314,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:314,1'
          Dst:             str_to_intmax
    - functionName:    str_to_llong
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:313,1'
          Branch Sides:
            - BranchSide:      'strnum.c:313,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:313,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:313,1'
          Branch Sides:
            - BranchSide:      'strnum.c:313,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:313,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:313,1'
          Branch Sides:
            - BranchSide:      'strnum.c:313,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:313,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:313,1'
          Dst:             str_to_intmax
    - functionName:    str_to_long
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:312,1'
          Branch Sides:
            - BranchSide:      'strnum.c:312,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:312,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:312,1'
          Branch Sides:
            - BranchSide:      'strnum.c:312,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:312,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:312,1'
          Branch Sides:
            - BranchSide:      'strnum.c:312,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:312,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:312,1'
          Dst:             str_to_intmax
    - functionName:    str_to_int
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:311,1'
          Branch Sides:
            - BranchSide:      'strnum.c:311,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:311,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:311,1'
          Branch Sides:
            - BranchSide:      'strnum.c:311,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:311,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:311,1'
          Branch Sides:
            - BranchSide:      'strnum.c:311,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:311,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:311,1'
          Dst:             str_to_intmax
    - functionName:    str_parse_int64
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_parse_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:297,1'
          Branch Sides:
            - BranchSide:      'strnum.c:297,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:297,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:297,1'
          Branch Sides:
            - BranchSide:      'strnum.c:297,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:297,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:297,1'
          Branch Sides:
            - BranchSide:      'strnum.c:297,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:297,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:297,1'
          Dst:             str_parse_intmax
    - functionName:    str_parse_int32
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_parse_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:296,1'
          Branch Sides:
            - BranchSide:      'strnum.c:296,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:296,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:296,1'
          Branch Sides:
            - BranchSide:      'strnum.c:296,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:296,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:296,1'
          Branch Sides:
            - BranchSide:      'strnum.c:296,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:296,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:296,1'
          Dst:             str_parse_intmax
    - functionName:    str_parse_llong
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_parse_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:295,1'
          Branch Sides:
            - BranchSide:      'strnum.c:295,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:295,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:295,1'
          Branch Sides:
            - BranchSide:      'strnum.c:295,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:295,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:295,1'
          Branch Sides:
            - BranchSide:      'strnum.c:295,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:295,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:295,1'
          Dst:             str_parse_intmax
    - functionName:    str_parse_long
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_parse_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:294,1'
          Branch Sides:
            - BranchSide:      'strnum.c:294,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:294,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:294,1'
          Branch Sides:
            - BranchSide:      'strnum.c:294,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:294,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:294,1'
          Branch Sides:
            - BranchSide:      'strnum.c:294,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:294,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:294,1'
          Dst:             str_parse_intmax
    - functionName:    str_parse_int
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_parse_intmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:293,1'
          Branch Sides:
            - BranchSide:      'strnum.c:293,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:293,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:293,1'
          Branch Sides:
            - BranchSide:      'strnum.c:293,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:293,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:293,1'
          Branch Sides:
            - BranchSide:      'strnum.c:293,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:293,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:293,1'
          Dst:             str_parse_intmax
    - functionName:    str_to_uint64_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:246,1'
          Branch Sides:
            - BranchSide:      'strnum.c:246,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:246,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:246,1'
          Branch Sides:
            - BranchSide:      'strnum.c:246,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:246,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:246,1'
          Dst:             str_to_uintmax_oct
    - functionName:    str_to_uintmax_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_oct
      functionUses:    5
      BranchProfiles:
        - Branch String:   'strnum.c:271,17'
          Branch Sides:
            - BranchSide:      'strnum.c:271,22'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:272,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:271,6'
          Branch Sides:
            - BranchSide:      'strnum.c:272,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:273,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:270,12'
          Dst:             str_parse_uintmax_oct
    - functionName:    str_parse_uintmax_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         19
      ICount:          107
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strnum.c:253,17'
          Branch Sides:
            - BranchSide:      'strnum.c:253,21'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:254,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:253,6'
          Branch Sides:
            - BranchSide:      'strnum.c:254,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:256,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:256,21'
          Branch Sides:
            - BranchSide:      'strnum.c:256,25'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:256,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:256,2'
          Branch Sides:
            - BranchSide:      'strnum.c:257,7'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:261,6'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:257,7'
          Branch Sides:
            - BranchSide:      'strnum.c:258,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:259,8'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:261,6'
          Branch Sides:
            - BranchSide:      'strnum.c:262,13'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:263,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_to_uint32_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:245,1'
          Branch Sides:
            - BranchSide:      'strnum.c:245,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:245,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:245,1'
          Branch Sides:
            - BranchSide:      'strnum.c:245,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:245,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:245,1'
          Dst:             str_to_uintmax_oct
    - functionName:    str_to_ullong_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_oct
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strnum.c:244,1'
          Branch Sides:
            - BranchSide:      'strnum.c:244,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:244,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:244,1'
          Branch Sides:
            - BranchSide:      'strnum.c:244,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:244,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:244,1'
          Dst:             str_to_uintmax_oct
    - functionName:    str_to_ulong_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:243,1'
          Branch Sides:
            - BranchSide:      'strnum.c:243,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:243,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:243,1'
          Branch Sides:
            - BranchSide:      'strnum.c:243,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:243,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:243,1'
          Dst:             str_to_uintmax_oct
    - functionName:    str_to_uint_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_oct
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strnum.c:242,1'
          Branch Sides:
            - BranchSide:      'strnum.c:242,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:242,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:242,1'
          Branch Sides:
            - BranchSide:      'strnum.c:242,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:242,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:242,1'
          Dst:             str_to_uintmax_oct
    - functionName:    str_parse_uint64_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:230,1'
          Branch Sides:
            - BranchSide:      'strnum.c:230,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:230,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:230,1'
          Branch Sides:
            - BranchSide:      'strnum.c:230,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:230,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:230,1'
          Dst:             str_parse_uintmax_oct
    - functionName:    str_parse_uint32_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:229,1'
          Branch Sides:
            - BranchSide:      'strnum.c:229,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:229,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:229,1'
          Branch Sides:
            - BranchSide:      'strnum.c:229,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:229,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:229,1'
          Dst:             str_parse_uintmax_oct
    - functionName:    str_parse_ullong_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:228,1'
          Branch Sides:
            - BranchSide:      'strnum.c:228,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:228,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:228,1'
          Branch Sides:
            - BranchSide:      'strnum.c:228,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:228,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:228,1'
          Dst:             str_parse_uintmax_oct
    - functionName:    str_parse_ulong_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:227,1'
          Branch Sides:
            - BranchSide:      'strnum.c:227,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:227,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:227,1'
          Branch Sides:
            - BranchSide:      'strnum.c:227,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:227,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:227,1'
          Dst:             str_parse_uintmax_oct
    - functionName:    str_parse_uint_oct
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_oct
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:226,1'
          Branch Sides:
            - BranchSide:      'strnum.c:226,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:226,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:226,1'
          Branch Sides:
            - BranchSide:      'strnum.c:226,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:226,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:226,1'
          Dst:             str_parse_uintmax_oct
    - functionName:    _str_parse_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ch
        - hex_r
      BBCount:         29
      ICount:          134
      EdgeCount:       56
      CyclomaticComplexity: 29
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'strnum.c:165,2'
          Branch Sides:
            - BranchSide:      'strnum.c:167,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:167,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:167,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:167,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:167,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:167,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:170,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:170,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:170,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:170,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:170,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:170,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:174,27'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:177,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_to_uint64_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:160,1'
          Branch Sides:
            - BranchSide:      'strnum.c:160,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:160,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:160,1'
          Branch Sides:
            - BranchSide:      'strnum.c:160,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:160,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:160,1'
          Dst:             str_to_uintmax_hex
    - functionName:    str_to_uintmax_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_hex
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strnum.c:206,17'
          Branch Sides:
            - BranchSide:      'strnum.c:206,22'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:207,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:206,6'
          Branch Sides:
            - BranchSide:      'strnum.c:207,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:208,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:205,12'
          Dst:             str_parse_uintmax_hex
    - functionName:    str_parse_uintmax_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         15
      ICount:          86
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _str_parse_hex
      functionUses:    6
      BranchProfiles:
        - Branch String:   'strnum.c:187,6'
          Branch Sides:
            - BranchSide:      'strnum.c:188,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:190,2'
              BranchSideFuncs:
                - _str_parse_hex
        - Branch String:   'strnum.c:191,7'
          Branch Sides:
            - BranchSide:      'strnum.c:192,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:193,8'
              BranchSideFuncs:
                - _str_parse_hex
        - Branch String:   'strnum.c:195,2'
          Branch Sides:
            - BranchSide:      'strnum.c:191,7'
              BranchSideFuncs:
                - _str_parse_hex
            - BranchSide:      'strnum.c:196,6'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:196,6'
          Branch Sides:
            - BranchSide:      'strnum.c:197,13'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:198,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:187,6'
          Dst:             _str_parse_hex
        - Src:             'strnum.c:195,11'
          Dst:             _str_parse_hex
    - functionName:    str_to_uint32_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:159,1'
          Branch Sides:
            - BranchSide:      'strnum.c:159,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:159,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:159,1'
          Branch Sides:
            - BranchSide:      'strnum.c:159,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:159,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:159,1'
          Dst:             str_to_uintmax_hex
    - functionName:    str_to_ullong_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:158,1'
          Branch Sides:
            - BranchSide:      'strnum.c:158,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:158,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:158,1'
          Branch Sides:
            - BranchSide:      'strnum.c:158,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:158,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:158,1'
          Dst:             str_to_uintmax_hex
    - functionName:    str_to_ulong_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:157,1'
          Branch Sides:
            - BranchSide:      'strnum.c:157,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:157,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:157,1'
          Branch Sides:
            - BranchSide:      'strnum.c:157,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:157,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:157,1'
          Dst:             str_to_uintmax_hex
    - functionName:    str_to_uint_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax_hex
      functionUses:    1
      BranchProfiles:
        - Branch String:   'strnum.c:156,1'
          Branch Sides:
            - BranchSide:      'strnum.c:156,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:156,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:156,1'
          Branch Sides:
            - BranchSide:      'strnum.c:156,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:156,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:156,1'
          Dst:             str_to_uintmax_hex
    - functionName:    str_parse_uint64_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:144,1'
          Branch Sides:
            - BranchSide:      'strnum.c:144,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:144,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:144,1'
          Branch Sides:
            - BranchSide:      'strnum.c:144,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:144,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:144,1'
          Dst:             str_parse_uintmax_hex
    - functionName:    str_parse_uint32_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:143,1'
          Branch Sides:
            - BranchSide:      'strnum.c:143,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:143,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:143,1'
          Branch Sides:
            - BranchSide:      'strnum.c:143,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:143,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:143,1'
          Dst:             str_parse_uintmax_hex
    - functionName:    str_parse_ullong_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:142,1'
          Branch Sides:
            - BranchSide:      'strnum.c:142,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:142,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:142,1'
          Branch Sides:
            - BranchSide:      'strnum.c:142,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:142,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:142,1'
          Dst:             str_parse_uintmax_hex
    - functionName:    str_parse_ulong_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:141,1'
          Branch Sides:
            - BranchSide:      'strnum.c:141,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:141,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:141,1'
          Branch Sides:
            - BranchSide:      'strnum.c:141,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:141,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:141,1'
          Dst:             str_parse_uintmax_hex
    - functionName:    str_parse_uint_hex
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax_hex
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:140,1'
          Branch Sides:
            - BranchSide:      'strnum.c:140,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:140,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:140,1'
          Branch Sides:
            - BranchSide:      'strnum.c:140,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:140,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:140,1'
          Dst:             str_parse_uintmax_hex
    - functionName:    str_uint_equals
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - num
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_to_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:121,6'
          Branch Sides:
            - BranchSide:      'strnum.c:122,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:123,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:121,6'
          Dst:             str_to_uintmax
    - functionName:    str_to_uint64
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:80,1'
          Branch Sides:
            - BranchSide:      'strnum.c:80,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:80,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:80,1'
          Branch Sides:
            - BranchSide:      'strnum.c:80,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:80,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:80,1'
          Dst:             str_to_uintmax
    - functionName:    str_to_uint32
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:79,1'
          Branch Sides:
            - BranchSide:      'strnum.c:79,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:79,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:79,1'
          Branch Sides:
            - BranchSide:      'strnum.c:79,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:79,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:79,1'
          Dst:             str_to_uintmax
    - functionName:    str_to_ullong
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:78,1'
          Branch Sides:
            - BranchSide:      'strnum.c:78,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:78,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:78,1'
          Branch Sides:
            - BranchSide:      'strnum.c:78,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:78,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:78,1'
          Dst:             str_to_uintmax
    - functionName:    str_to_ulong
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:77,1'
          Branch Sides:
            - BranchSide:      'strnum.c:77,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:77,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:77,1'
          Branch Sides:
            - BranchSide:      'strnum.c:77,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:77,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:77,1'
          Dst:             str_to_uintmax
    - functionName:    str_to_uint
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_uintmax
      functionUses:    10
      BranchProfiles:
        - Branch String:   'strnum.c:76,1'
          Branch Sides:
            - BranchSide:      'strnum.c:76,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:76,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:76,1'
          Branch Sides:
            - BranchSide:      'strnum.c:76,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:76,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:76,1'
          Dst:             str_to_uintmax
    - functionName:    str_parse_uint64
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:64,1'
          Branch Sides:
            - BranchSide:      'strnum.c:64,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:64,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:64,1'
          Branch Sides:
            - BranchSide:      'strnum.c:64,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:64,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:64,1'
          Dst:             str_parse_uintmax
    - functionName:    str_parse_uint32
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:63,1'
          Branch Sides:
            - BranchSide:      'strnum.c:63,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:63,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:63,1'
          Branch Sides:
            - BranchSide:      'strnum.c:63,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:63,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:63,1'
          Dst:             str_parse_uintmax
    - functionName:    str_parse_ullong
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:62,1'
          Branch Sides:
            - BranchSide:      'strnum.c:62,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:62,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:62,1'
          Branch Sides:
            - BranchSide:      'strnum.c:62,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:62,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:62,1'
          Dst:             str_parse_uintmax
    - functionName:    str_parse_ulong
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:61,1'
          Branch Sides:
            - BranchSide:      'strnum.c:61,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:61,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:61,1'
          Branch Sides:
            - BranchSide:      'strnum.c:61,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:61,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:61,1'
          Dst:             str_parse_uintmax
    - functionName:    str_parse_uint
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - num_r
        - endp_r
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - str_parse_uintmax
      functionUses:    3
      BranchProfiles:
        - Branch String:   'strnum.c:60,1'
          Branch Sides:
            - BranchSide:      'strnum.c:60,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:60,1'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:60,1'
          Branch Sides:
            - BranchSide:      'strnum.c:60,1'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:60,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'strnum.c:60,1'
          Dst:             str_parse_uintmax
    - functionName:    str_is_float
      functionSourceFile: '/src/dovecot/src/lib/strnum.c'
      linkageType:     externalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - end_char
      BBCount:         25
      ICount:          133
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'strnum.c:25,19'
          Branch Sides:
            - BranchSide:      'strnum.c:25,23'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:26,3'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:25,6'
          Branch Sides:
            - BranchSide:      'strnum.c:26,3'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:28,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:28,22'
          Branch Sides:
            - BranchSide:      'strnum.c:28,26'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:28,2'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:28,2'
          Branch Sides:
            - BranchSide:      'strnum.c:29,8'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:43,9'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:29,7'
          Branch Sides:
            - BranchSide:      'strnum.c:30,8'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:37,8'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:30,17'
          Branch Sides:
            - BranchSide:      'strnum.c:30,31'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:30,21'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:30,8'
          Branch Sides:
            - BranchSide:      'strnum.c:30,31'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:31,13'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:37,18'
          Branch Sides:
            - BranchSide:      'strnum.c:37,22'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:38,4'
              BranchSideFuncs: []
        - Branch String:   'strnum.c:37,7'
          Branch Sides:
            - BranchSide:      'strnum.c:38,4'
              BranchSideFuncs: []
            - BranchSide:      'strnum.c:39,12'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    str_to_timeval
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - tv_r
      BBCount:         21
      ICount:          137
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - i_memcpy
        - i_panic
        - str_to_time
        - str_to_uint
        - strchr
        - strlen
        - t_pop
        - t_push
        - t_strdup_until
      functionUses:    0
      BranchProfiles:
        - Branch String:   'time-util.c:138,6'
          Branch Sides:
            - BranchSide:      'time-util.c:139,22'
              BranchSideFuncs:
                - str_to_time
            - BranchSide:      'time-util.c:142,2'
              BranchSideFuncs:
                - t_push
                - t_strdup_until
                - str_to_time
                - t_pop
                - strlen
                - i_memcpy.10458
                - str_to_uint
                - i_panic
        - Branch String:   'time-util.c:144,4'
          Branch Sides:
            - BranchSide:      'time-util.c:144,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'time-util.c:144,4'
              BranchSideFuncs:
                - strlen
                - i_memcpy.10458
                - str_to_uint
        - Branch String:   'time-util.c:145,14'
          Branch Sides:
            - BranchSide:      'time-util.c:145,17'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:146,3'
              BranchSideFuncs: []
        - Branch String:   'time-util.c:145,6'
          Branch Sides:
            - BranchSide:      'time-util.c:146,3'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:148,28'
              BranchSideFuncs:
                - strlen
                - i_memcpy.10458
                - str_to_uint
        - Branch String:   'time-util.c:149,6'
          Branch Sides:
            - BranchSide:      'time-util.c:150,3'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:151,7'
              BranchSideFuncs:
                - i_memcpy.10458
                - str_to_uint
        - Branch String:   'time-util.c:155,6'
          Branch Sides:
            - BranchSide:      'time-util.c:156,3'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:157,18'
              BranchSideFuncs: []
      Callsites:
        - Src:             'time-util.c:137,18'
          Dst:             strchr
        - Src:             'time-util.c:139,10'
          Dst:             str_to_time
        - Src:             'time-util.c:142,2'
          Dst:             t_push
        - Src:             'time-util.c:143,21'
          Dst:             t_strdup_until
        - Src:             'time-util.c:143,9'
          Dst:             str_to_time
        - Src:             'time-util.c:144,4'
          Dst:             t_pop
        - Src:             'time-util.c:144,4'
          Dst:             i_panic
        - Src:             'time-util.c:148,21'
          Dst:             strlen
        - Src:             'time-util.c:152,2'
          Dst:             i_memcpy
        - Src:             'time-util.c:155,6'
          Dst:             str_to_uint
    - functionName:    t_strfgmtime
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fmt
        - t
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gmtime
        - strftime_real
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'time-util.c:130,28'
          Dst:             gmtime
        - Src:             'time-util.c:130,9'
          Dst:             strftime_real
    - functionName:    gmtime
      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:    strftime_real
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fmt
        - tm
      BBCount:         10
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - strftime
        - strlen
        - t_buffer_alloc
        - t_buffer_get
      functionUses:    3
      BranchProfiles:
        - Branch String:   'time-util.c:109,2'
          Branch Sides:
            - BranchSide:      'time-util.c:110,11'
              BranchSideFuncs:
                - t_buffer_get
                - strftime
                - t_buffer_alloc
                - i_panic
            - BranchSide:      'time-util.c:114,17'
              BranchSideFuncs:
                - t_buffer_alloc
        - Branch String:   'time-util.c:111,3'
          Branch Sides:
            - BranchSide:      'time-util.c:111,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'time-util.c:112,22'
              BranchSideFuncs:
                - t_buffer_get
                - strftime
                - t_buffer_alloc
                - i_panic
      Callsites:
        - Src:             'time-util.c:105,19'
          Dst:             strlen
        - Src:             'time-util.c:106,14'
          Dst:             t_buffer_get
        - Src:             'time-util.c:109,16'
          Dst:             strftime
        - Src:             'time-util.c:111,3'
          Dst:             i_panic
        - Src:             'time-util.c:112,9'
          Dst:             t_buffer_get
        - Src:             'time-util.c:114,2'
          Dst:             t_buffer_alloc
    - functionName:    t_strflocaltime
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fmt
        - t
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - localtime
        - strftime_real
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'time-util.c:125,28'
          Dst:             localtime
        - Src:             'time-util.c:125,9'
          Dst:             strftime_real
    - functionName:    t_strftime
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - fmt
        - tm
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strftime_real
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'time-util.c:120,9'
          Dst:             strftime_real
    - functionName:    time_to_local_day_start
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - t
      BBCount:         7
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
        - localtime
        - mktime
      functionUses:    0
      BranchProfiles:
        - Branch String:   'time-util.c:99,2'
          Branch Sides:
            - BranchSide:      'time-util.c:99,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'time-util.c:99,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'time-util.c:92,11'
          Dst:             localtime
        - Src:             'time-util.c:98,19'
          Dst:             mktime
        - Src:             'time-util.c:99,2'
          Dst:             i_panic
    - functionName:    mktime
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timeval_diff_usecs
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - tv1
        - tv2
      BBCount:         4
      ICount:          52
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:
        - Branch String:   'time-util.c:79,6'
          Branch Sides:
            - BranchSide:      'time-util.c:79,6'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:80,7'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    timeval_cmp_margin
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - tv1
        - tv2
        - usec_margin
      BBCount:         24
      ICount:          198
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'time-util.c:44,6'
          Branch Sides:
            - BranchSide:      'time-util.c:45,22'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'time-util.c:52,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'time-util.c:47,7'
          Branch Sides:
            - BranchSide:      'time-util.c:48,4'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:49,16'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'time-util.c:52,13'
          Branch Sides:
            - BranchSide:      'time-util.c:53,22'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'time-util.c:60,13'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'time-util.c:55,7'
          Branch Sides:
            - BranchSide:      'time-util.c:56,4'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:57,16'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'time-util.c:60,13'
          Branch Sides:
            - BranchSide:      'time-util.c:61,16'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'time-util.c:64,16'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'time-util.c:67,2'
          Branch Sides:
            - BranchSide:      'time-util.c:67,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'time-util.c:68,29'
              BranchSideFuncs: []
        - Branch String:   'time-util.c:68,9'
          Branch Sides:
            - BranchSide:      'time-util.c:68,56'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:68,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'time-util.c:67,2'
          Dst:             i_panic
    - functionName:    timeval_cmp
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - tv1
        - tv2
      BBCount:         10
      ICount:          73
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'time-util.c:27,6'
          Branch Sides:
            - BranchSide:      'time-util.c:28,3'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:29,6'
              BranchSideFuncs: []
        - Branch String:   'time-util.c:29,6'
          Branch Sides:
            - BranchSide:      'time-util.c:30,3'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:31,6'
              BranchSideFuncs: []
        - Branch String:   'time-util.c:31,6'
          Branch Sides:
            - BranchSide:      'time-util.c:32,3'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:33,6'
              BranchSideFuncs: []
        - Branch String:   'time-util.c:33,6'
          Branch Sides:
            - BranchSide:      'time-util.c:34,3'
              BranchSideFuncs: []
            - BranchSide:      'time-util.c:35,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    i_nanoseconds
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          31
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
        - i_fatal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'time-util.c:20,6'
          Branch Sides:
            - BranchSide:      'time-util.c:18,18'
              BranchSideFuncs:
                - clock_gettime
                - i_fatal
            - BranchSide:      'time-util.c:20,6'
              BranchSideFuncs:
                - clock_gettime
                - i_fatal
        - Branch String:   'time-util.c:20,6'
          Branch Sides:
            - BranchSide:      'time-util.c:21,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'time-util.c:22,12'
              BranchSideFuncs: []
      Callsites:
        - Src:             'time-util.c:20,6'
          Dst:             clock_gettime
        - Src:             'time-util.c:21,3'
          Dst:             i_fatal
    - functionName:    i_gettimeofday
      functionSourceFile: '/src/dovecot/src/lib/time-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 14
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - tv_r
      BBCount:         5
      ICount:          27
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - gettimeofday
        - i_fatal
      functionUses:    15
      BranchProfiles:
        - Branch String:   'time-util.c:12,6'
          Branch Sides:
            - BranchSide:      'time-util.c:13,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'time-util.c:14,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'time-util.c:12,6'
          Dst:             gettimeofday
        - Src:             'time-util.c:13,3'
          Dst:             i_fatal
    - functionName:    gettimeofday
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uni_utf8_data_truncate
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - data
        - old_size
        - max_new_size
      BBCount:         19
      ICount:          113
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unichar.c:592,6'
          Branch Sides:
            - BranchSide:      'unichar.c:593,10'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:594,6'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:594,6'
          Branch Sides:
            - BranchSide:      'unichar.c:595,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:597,7'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:597,6'
          Branch Sides:
            - BranchSide:      'unichar.c:598,10'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:599,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:599,26'
          Branch Sides:
            - BranchSide:      'unichar.c:599,30'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:599,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:599,2'
          Branch Sides:
            - BranchSide:      'unichar.c:600,15'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:601,6'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:601,23'
          Branch Sides:
            - BranchSide:      'unichar.c:601,27'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:603,9'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:601,6'
          Branch Sides:
            - BranchSide:      'unichar.c:602,15'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:603,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    uni_utf8_data_is_valid
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - data
        - size
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_find_invalid_pos
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:586,9'
          Dst:             uni_utf8_find_invalid_pos
    - functionName:    uni_utf8_find_invalid_pos
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - pos_r
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - is_valid_utf8_seq
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unichar.c:529,2'
          Branch Sides:
            - BranchSide:      'unichar.c:530,7'
              BranchSideFuncs:
                - is_valid_utf8_seq
            - BranchSide:      'unichar.c:541,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:530,7'
          Branch Sides:
            - BranchSide:      'unichar.c:531,5'
              BranchSideFuncs:
                - is_valid_utf8_seq
            - BranchSide:      'unichar.c:533,28'
              BranchSideFuncs:
                - is_valid_utf8_seq
        - Branch String:   'unichar.c:534,8'
          Branch Sides:
            - BranchSide:      'unichar.c:535,14'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:538,9'
              BranchSideFuncs:
                - is_valid_utf8_seq
      Callsites:
        - Src:             'unichar.c:533,10'
          Dst:             is_valid_utf8_seq
    - functionName:    is_valid_utf8_seq
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - uni_utf8_get_char_n
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unichar.c:520,9'
          Branch Sides:
            - BranchSide:      'unichar.c:520,9'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:520,24'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:519,12'
          Dst:             uni_utf8_get_char_n
    - functionName:    uni_utf8_get_char_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - max_len
        - chr_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_parse_char
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:114,9'
          Dst:             uni_utf8_parse_char
    - functionName:    uni_utf8_parse_char
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - _buffer
        - size
        - cstr
        - chr_r
      BBCount:         39
      ICount:          265
      EdgeCount:       46
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - uni_is_valid_ucs4
        - uni_utf8_char_bytes
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unichar.c:41,2'
          Branch Sides:
            - BranchSide:      'unichar.c:41,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:43,7'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10590
                - uni_is_valid_ucs4
                - i_panic
        - Branch String:   'unichar.c:43,6'
          Branch Sides:
            - BranchSide:      'unichar.c:44,13'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:50,9'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10590
                - uni_is_valid_ucs4
                - i_panic
        - Branch String:   'unichar.c:52,2'
          Branch Sides:
            - BranchSide:      'unichar.c:54,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:57,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:60,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:63,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:66,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:70,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unichar.c:70,3'
          Branch Sides:
            - BranchSide:      'unichar.c:70,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:71,3'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:74,6'
          Branch Sides:
            - BranchSide:      'unichar.c:75,45'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:79,20'
              BranchSideFuncs:
                - uni_is_valid_ucs4
        - Branch String:   'unichar.c:85,2'
          Branch Sides:
            - BranchSide:      'unichar.c:86,8'
              BranchSideFuncs:
                - uni_is_valid_ucs4
            - BranchSide:      'unichar.c:96,25'
              BranchSideFuncs:
                - uni_is_valid_ucs4
        - Branch String:   'unichar.c:86,7'
          Branch Sides:
            - BranchSide:      'unichar.c:87,12'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:91,7'
              BranchSideFuncs:
                - uni_is_valid_ucs4
        - Branch String:   'unichar.c:87,17'
          Branch Sides:
            - BranchSide:      'unichar.c:87,20'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:87,12'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:87,37'
          Branch Sides:
            - BranchSide:      'unichar.c:87,40'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:87,12'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:96,6'
          Branch Sides:
            - BranchSide:      'unichar.c:97,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:98,6'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:98,6'
          Branch Sides:
            - BranchSide:      'unichar.c:100,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:103,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:41,2'
          Dst:             i_panic
        - Src:             'unichar.c:51,8'
          Dst:             uni_utf8_char_bytes
        - Src:             'unichar.c:70,3'
          Dst:             i_panic
        - Src:             'unichar.c:96,7'
          Dst:             uni_is_valid_ucs4
    - functionName:    uni_utf8_char_bytes
      functionSourceFile: '/src/dovecot/src/lib/./unichar.h'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - chr
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './unichar.h:113,6'
          Branch Sides:
            - BranchSide:      './unichar.h:114,3'
              BranchSideFuncs: []
            - BranchSide:      './unichar.h:115,29'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    uni_is_valid_ucs4
      functionSourceFile: '/src/dovecot/src/lib/./unichar.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - chr
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './unichar.h:61,43'
          Branch Sides:
            - BranchSide:      './unichar.h:61,43'
              BranchSideFuncs: []
            - BranchSide:      './unichar.h:62,4'
              BranchSideFuncs: []
        - Branch String:   './unichar.h:62,35'
          Branch Sides:
            - BranchSide:      './unichar.h:62,35'
              BranchSideFuncs: []
            - BranchSide:      './unichar.h:63,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    uni_utf8_str_is_valid
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - uni_utf8_find_invalid_pos
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:579,7'
          Dst:             strlen
        - Src:             'unichar.c:578,9'
          Dst:             uni_utf8_find_invalid_pos
    - functionName:    uni_utf8_get_valid_data
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - buf
      BBCount:         13
      ICount:          111
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - buffer_append
        - buffer_append_c
        - is_valid_utf8_seq
        - output_add_replacement_char
        - uni_utf8_find_invalid_pos
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:549,6'
          Branch Sides:
            - BranchSide:      'unichar.c:550,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:553,16'
              BranchSideFuncs:
                - buffer_append
                - output_add_replacement_char
                - is_valid_utf8_seq
                - buffer_append
                - output_add_replacement_char
                - buffer_append_c
        - Branch String:   'unichar.c:556,2'
          Branch Sides:
            - BranchSide:      'unichar.c:557,7'
              BranchSideFuncs:
                - is_valid_utf8_seq
                - buffer_append
                - output_add_replacement_char
                - buffer_append_c
            - BranchSide:      'unichar.c:571,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:557,7'
          Branch Sides:
            - BranchSide:      'unichar.c:558,20'
              BranchSideFuncs:
                - buffer_append_c
                - is_valid_utf8_seq
                - buffer_append
                - output_add_replacement_char
            - BranchSide:      'unichar.c:562,27'
              BranchSideFuncs:
                - is_valid_utf8_seq
                - buffer_append
                - buffer_append_c
                - output_add_replacement_char
        - Branch String:   'unichar.c:563,7'
          Branch Sides:
            - BranchSide:      'unichar.c:564,5'
              BranchSideFuncs:
                - output_add_replacement_char
                - is_valid_utf8_seq
                - buffer_append
                - buffer_append_c
            - BranchSide:      'unichar.c:568,17'
              BranchSideFuncs:
                - buffer_append
                - is_valid_utf8_seq
                - output_add_replacement_char
                - buffer_append_c
      Callsites:
        - Src:             'unichar.c:549,6'
          Dst:             uni_utf8_find_invalid_pos
        - Src:             'unichar.c:553,2'
          Dst:             buffer_append
        - Src:             'unichar.c:555,2'
          Dst:             output_add_replacement_char
        - Src:             'unichar.c:558,4'
          Dst:             buffer_append_c
        - Src:             'unichar.c:562,9'
          Dst:             is_valid_utf8_seq
        - Src:             'unichar.c:565,4'
          Dst:             output_add_replacement_char
        - Src:             'unichar.c:568,3'
          Dst:             buffer_append
    - functionName:    output_add_replacement_char
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - output
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - buffer_append
        - memcmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unichar.c:244,48'
          Branch Sides:
            - BranchSide:      'unichar.c:245,13'
              BranchSideFuncs:
                - memcmp
                - buffer_append
            - BranchSide:      'unichar.c:251,16'
              BranchSideFuncs:
                - buffer_append
        - Branch String:   'unichar.c:244,6'
          Branch Sides:
            - BranchSide:      'unichar.c:249,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:251,16'
              BranchSideFuncs:
                - buffer_append
      Callsites:
        - Src:             'unichar.c:245,6'
          Dst:             memcmp
        - Src:             'unichar.c:251,2'
          Dst:             buffer_append
    - functionName:    uni_utf8_to_decomposed_titlecase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - output
      BBCount:         8
      ICount:          88
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - output_add_replacement_char
        - uni_ucs4_to_utf8
        - uni_utf8_get_char_n
        - unicode_rfc5051_init
        - unicode_rfc5051_normalize
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:494,2'
          Branch Sides:
            - BranchSide:      'unichar.c:495,35'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - unicode_rfc5051_normalize
                - uni_ucs4_to_utf8
                - output_add_replacement_char
            - BranchSide:      'unichar.c:512,9'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:496,7'
          Branch Sides:
            - BranchSide:      'unichar.c:498,8'
              BranchSideFuncs:
                - output_add_replacement_char
                - uni_utf8_get_char_n
                - unicode_rfc5051_normalize
                - uni_ucs4_to_utf8
            - BranchSide:      'unichar.c:503,12'
              BranchSideFuncs:
                - unicode_rfc5051_normalize
                - uni_ucs4_to_utf8
                - uni_utf8_get_char_n
                - output_add_replacement_char
      Callsites:
        - Src:             'unichar.c:492,2'
          Dst:             unicode_rfc5051_init
        - Src:             'unichar.c:495,15'
          Dst:             uni_utf8_get_char_n
        - Src:             'unichar.c:500,4'
          Dst:             output_add_replacement_char
        - Src:             'unichar.c:509,14'
          Dst:             unicode_rfc5051_normalize
        - Src:             'unichar.c:510,3'
          Dst:             uni_ucs4_to_utf8
    - functionName:    uni_ucs4_to_utf8
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - len
        - output
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - uni_ucs4_to_utf8_c
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unichar.c:157,17'
          Branch Sides:
            - BranchSide:      'unichar.c:157,21'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
            - BranchSide:      'unichar.c:157,2'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
        - Branch String:   'unichar.c:157,2'
          Branch Sides:
            - BranchSide:      'unichar.c:158,23'
              BranchSideFuncs:
                - uni_ucs4_to_utf8_c
            - BranchSide:      'unichar.c:159,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:158,3'
          Dst:             uni_ucs4_to_utf8_c
    - functionName:    uni_ucs4_to_utf8_c
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - chr
        - output
      BBCount:         26
      ICount:          131
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - buffer_append_c
        - i_panic
        - uni_is_valid_ucs4
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unichar.c:166,6'
          Branch Sides:
            - BranchSide:      'unichar.c:167,19'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'unichar.c:171,2'
              BranchSideFuncs:
                - uni_is_valid_ucs4
                - buffer_append_c
                - buffer_append_c
                - i_panic
        - Branch String:   'unichar.c:171,2'
          Branch Sides:
            - BranchSide:      'unichar.c:171,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:173,6'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:173,6'
          Branch Sides:
            - BranchSide:      'unichar.c:175,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:177,13'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:177,13'
          Branch Sides:
            - BranchSide:      'unichar.c:179,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:181,13'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:181,13'
          Branch Sides:
            - BranchSide:      'unichar.c:183,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:185,13'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:185,13'
          Branch Sides:
            - BranchSide:      'unichar.c:187,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
            - BranchSide:      'unichar.c:191,10'
              BranchSideFuncs:
                - buffer_append_c
                - buffer_append_c
        - Branch String:   'unichar.c:199,2'
          Branch Sides:
            - BranchSide:      'unichar.c:197,10'
              BranchSideFuncs:
                - buffer_append_c
            - BranchSide:      'unichar.c:199,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:167,3'
          Dst:             buffer_append_c
        - Src:             'unichar.c:171,2'
          Dst:             uni_is_valid_ucs4
        - Src:             'unichar.c:171,2'
          Dst:             i_panic
        - Src:             'unichar.c:194,2'
          Dst:             buffer_append_c
        - Src:             'unichar.c:198,3'
          Dst:             buffer_append_c
    - functionName:    uni_utf8_to_casefold
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output_r
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_create_dynamic
        - pool_datastack_create
        - str_c
        - uni_utf8_write_casefold
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:476,21'
          Dst:             pool_datastack_create
        - Src:             'unichar.c:476,21'
          Dst:             buffer_create_dynamic
        - Src:             'unichar.c:479,8'
          Dst:             uni_utf8_write_casefold
        - Src:             'unichar.c:480,14'
          Dst:             str_c
    - functionName:    uni_utf8_write_casefold
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - output
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_run_transform
        - unicode_casemap_init_casefold
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:448,2'
          Dst:             unicode_casemap_init_casefold
        - Src:             'unichar.c:450,9'
          Dst:             uni_utf8_run_transform
    - functionName:    uni_utf8_run_transform
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - trans
        - output
        - error_r
      BBCount:         30
      ICount:          195
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - uni_utf8_get_char_n
        - unicode_buffer_sink_init
        - unicode_transform_chain
        - unicode_transform_flush
        - unicode_transform_get_last
        - unicode_transform_input
      functionUses:    4
      BranchProfiles:
        - Branch String:   'unichar.c:270,18'
          Branch Sides:
            - BranchSide:      'unichar.c:270,2'
              BranchSideFuncs:
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
                - unicode_transform_input
            - BranchSide:      'unichar.c:270,21'
              BranchSideFuncs:
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
                - unicode_transform_input
        - Branch String:   'unichar.c:270,2'
          Branch Sides:
            - BranchSide:      'unichar.c:271,8'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - unicode_transform_input
                - unicode_transform_flush
                - i_panic
                - i_panic
            - BranchSide:      'unichar.c:295,37'
              BranchSideFuncs:
                - unicode_transform_flush
                - i_panic
                - i_panic
        - Branch String:   'unichar.c:271,7'
          Branch Sides:
            - BranchSide:      'unichar.c:272,36'
              BranchSideFuncs:
                - unicode_transform_input
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
            - BranchSide:      'unichar.c:288,34'
              BranchSideFuncs:
                - unicode_transform_input
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
        - Branch String:   'unichar.c:273,8'
          Branch Sides:
            - BranchSide:      'unichar.c:275,9'
              BranchSideFuncs:
                - unicode_transform_input
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
            - BranchSide:      'unichar.c:282,14'
              BranchSideFuncs:
                - unicode_transform_input
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
        - Branch String:   'unichar.c:277,9'
          Branch Sides:
            - BranchSide:      'unichar.c:278,16'
              BranchSideFuncs:
                - unicode_transform_input
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
            - BranchSide:      'unichar.c:281,4'
              BranchSideFuncs:
                - unicode_transform_input
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
        - Branch String:   'unichar.c:289,7'
          Branch Sides:
            - BranchSide:      'unichar.c:290,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:291,7'
              BranchSideFuncs:
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
                - unicode_transform_input
        - Branch String:   'unichar.c:291,7'
          Branch Sides:
            - BranchSide:      'unichar.c:270,2'
              BranchSideFuncs:
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
                - unicode_transform_input
            - BranchSide:      'unichar.c:292,12'
              BranchSideFuncs:
                - unicode_transform_flush
                - i_panic
                - i_panic
                - uni_utf8_get_char_n
                - unicode_transform_input
        - Branch String:   'unichar.c:296,6'
          Branch Sides:
            - BranchSide:      'unichar.c:297,45'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:298,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unichar.c:298,2'
          Branch Sides:
            - BranchSide:      'unichar.c:298,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unichar.c:299,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:259,3'
          Dst:             unicode_transform_get_last
        - Src:             'unichar.c:267,2'
          Dst:             unicode_buffer_sink_init
        - Src:             'unichar.c:268,2'
          Dst:             unicode_transform_chain
        - Src:             'unichar.c:272,16'
          Dst:             uni_utf8_get_char_n
        - Src:             'unichar.c:288,10'
          Dst:             unicode_transform_input
        - Src:             'unichar.c:295,13'
          Dst:             unicode_transform_flush
        - Src:             'unichar.c:297,3'
          Dst:             i_panic
        - Src:             'unichar.c:298,2'
          Dst:             i_panic
    - functionName:    unicode_transform_get_last
      functionSourceFile: '/src/dovecot/src/lib/./unicode-transform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './unicode-transform.h:53,2'
          Branch Sides:
            - BranchSide:      './unicode-transform.h:54,11'
              BranchSideFuncs: []
            - BranchSide:      './unicode-transform.h:55,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    unicode_transform_chain
      functionSourceFile: '/src/dovecot/src/lib/./unicode-transform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - next
      BBCount:         7
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './unicode-transform.h:46,2'
          Branch Sides:
            - BranchSide:      './unicode-transform.h:46,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './unicode-transform.h:46,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './unicode-transform.h:46,2'
          Dst:             i_panic
    - functionName:    unicode_transform_input
      functionSourceFile: '/src/dovecot/src/lib/./unicode-transform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - in
        - in_len
        - error_r
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_transform_input_buf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './unicode-transform.h:75,9'
          Dst:             unicode_transform_input_buf
    - functionName:    uni_utf8_to_lowercase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output_r
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_create_dynamic
        - pool_datastack_create
        - str_c
        - uni_utf8_write_lowercase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:466,21'
          Dst:             pool_datastack_create
        - Src:             'unichar.c:466,21'
          Dst:             buffer_create_dynamic
        - Src:             'unichar.c:469,8'
          Dst:             uni_utf8_write_lowercase
        - Src:             'unichar.c:470,14'
          Dst:             str_c
    - functionName:    uni_utf8_write_lowercase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - output
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_run_transform
        - unicode_casemap_init_lowercase
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:437,2'
          Dst:             unicode_casemap_init_lowercase
        - Src:             'unichar.c:439,9'
          Dst:             uni_utf8_run_transform
    - functionName:    uni_utf8_to_uppercase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output_r
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_create_dynamic
        - pool_datastack_create
        - str_c
        - uni_utf8_write_uppercase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:456,21'
          Dst:             pool_datastack_create
        - Src:             'unichar.c:456,21'
          Dst:             buffer_create_dynamic
        - Src:             'unichar.c:459,8'
          Dst:             uni_utf8_write_uppercase
        - Src:             'unichar.c:460,14'
          Dst:             str_c
    - functionName:    uni_utf8_write_uppercase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - output
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_run_transform
        - unicode_casemap_init_uppercase
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:426,2'
          Dst:             unicode_casemap_init_uppercase
        - Src:             'unichar.c:428,9'
          Dst:             uni_utf8_run_transform
    - functionName:    uni_utf8_is_nfkc
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_is_nf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:418,9'
          Dst:             uni_utf8_is_nf
    - functionName:    uni_utf8_is_nf
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - _input
        - size
        - type
      BBCount:         11
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - uni_utf8_get_char_n
        - unicode_nf_checker_finish
        - unicode_nf_checker_init
        - unicode_nf_checker_input
      functionUses:    4
      BranchProfiles:
        - Branch String:   'unichar.c:385,2'
          Branch Sides:
            - BranchSide:      'unichar.c:386,41'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - unicode_nf_checker_input
                - unicode_nf_checker_finish
            - BranchSide:      'unichar.c:398,9'
              BranchSideFuncs:
                - unicode_nf_checker_finish
        - Branch String:   'unichar.c:388,7'
          Branch Sides:
            - BranchSide:      'unichar.c:389,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:390,12'
              BranchSideFuncs:
                - unicode_nf_checker_input
                - unicode_nf_checker_finish
                - uni_utf8_get_char_n
        - Branch String:   'unichar.c:394,7'
          Branch Sides:
            - BranchSide:      'unichar.c:385,2'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:395,11'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:383,2'
          Dst:             unicode_nf_checker_init
        - Src:             'unichar.c:387,15'
          Dst:             uni_utf8_get_char_n
        - Src:             'unichar.c:393,9'
          Dst:             unicode_nf_checker_input
        - Src:             'unichar.c:398,9'
          Dst:             unicode_nf_checker_finish
    - functionName:    uni_utf8_is_nfc
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_is_nf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:413,9'
          Dst:             uni_utf8_is_nf
    - functionName:    uni_utf8_is_nfkd
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_is_nf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:408,9'
          Dst:             uni_utf8_is_nf
    - functionName:    uni_utf8_is_nfd
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_is_nf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:403,9'
          Dst:             uni_utf8_is_nf
    - functionName:    uni_utf8_to_nfkc
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output_r
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_create_dynamic
        - pool_datastack_create
        - str_c
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:369,6'
          Branch Sides:
            - BranchSide:      'unichar.c:370,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:371,20'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'unichar.c:367,21'
          Dst:             pool_datastack_create
        - Src:             'unichar.c:367,21'
          Dst:             buffer_create_dynamic
        - Src:             'unichar.c:369,6'
          Dst:             uni_utf8_write_nf_common
        - Src:             'unichar.c:371,14'
          Dst:             str_c
    - functionName:    uni_utf8_write_nf_common
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - nf_type
        - output
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_run_transform
        - unicode_nf_init
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:309,2'
          Dst:             unicode_nf_init
        - Src:             'unichar.c:311,9'
          Dst:             uni_utf8_run_transform
    - functionName:    uni_utf8_to_nfc
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output_r
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_create_dynamic
        - pool_datastack_create
        - str_c
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:359,6'
          Branch Sides:
            - BranchSide:      'unichar.c:360,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:361,20'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'unichar.c:357,21'
          Dst:             pool_datastack_create
        - Src:             'unichar.c:357,21'
          Dst:             buffer_create_dynamic
        - Src:             'unichar.c:359,6'
          Dst:             uni_utf8_write_nf_common
        - Src:             'unichar.c:361,14'
          Dst:             str_c
    - functionName:    uni_utf8_to_nfkd
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output_r
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_create_dynamic
        - pool_datastack_create
        - str_c
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:349,6'
          Branch Sides:
            - BranchSide:      'unichar.c:350,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:351,20'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'unichar.c:347,21'
          Dst:             pool_datastack_create
        - Src:             'unichar.c:347,21'
          Dst:             buffer_create_dynamic
        - Src:             'unichar.c:349,6'
          Dst:             uni_utf8_write_nf_common
        - Src:             'unichar.c:351,14'
          Dst:             str_c
    - functionName:    uni_utf8_to_nfd
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output_r
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - buffer_create_dynamic
        - pool_datastack_create
        - str_c
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:339,6'
          Branch Sides:
            - BranchSide:      'unichar.c:340,3'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:341,20'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'unichar.c:337,21'
          Dst:             pool_datastack_create
        - Src:             'unichar.c:337,21'
          Dst:             buffer_create_dynamic
        - Src:             'unichar.c:339,6'
          Dst:             uni_utf8_write_nf_common
        - Src:             'unichar.c:341,14'
          Dst:             str_c
    - functionName:    uni_utf8_write_nfkc
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:332,9'
          Dst:             uni_utf8_write_nf_common
    - functionName:    uni_utf8_write_nfc
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:327,9'
          Dst:             uni_utf8_write_nf_common
    - functionName:    uni_utf8_write_nfkd
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:322,9'
          Dst:             uni_utf8_write_nf_common
    - functionName:    uni_utf8_write_nfd
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_write_nf_common
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:317,9'
          Dst:             uni_utf8_write_nf_common
    - functionName:    unicode_code_point_get_data
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - cp
      BBCount:         1
      ICount:          73
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uni_ucs4_to_titlecase
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - chr
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - unicode_code_point_get_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:237,6'
          Branch Sides:
            - BranchSide:      'unichar.c:238,10'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:239,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unichar.c:235,3'
          Dst:             unicode_code_point_get_data
    - functionName:    uni_utf8_partial_strlen_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - _input
        - size
        - partial_pos_r
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - uni_utf8_char_bytes
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unichar.c:221,2'
          Branch Sides:
            - BranchSide:      'unichar.c:221,2'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10590
            - BranchSide:      'unichar.c:222,31'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10590
        - Branch String:   'unichar.c:223,7'
          Branch Sides:
            - BranchSide:      'unichar.c:224,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:225,8'
              BranchSideFuncs:
                - uni_utf8_char_bytes.10590
      Callsites:
        - Src:             'unichar.c:222,11'
          Dst:             uni_utf8_char_bytes
    - functionName:    uni_utf8_strlen_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - input
        - size
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_partial_strlen_n
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:211,9'
          Dst:             uni_utf8_partial_strlen_n
    - functionName:    uni_utf8_strlen
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - uni_utf8_strlen_n
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:204,34'
          Dst:             strlen
        - Src:             'unichar.c:204,9'
          Dst:             uni_utf8_strlen_n
    - functionName:    uni_utf8_to_ucs4_n
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - size
        - output
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - uni_utf8_get_char_n
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:144,2'
          Branch Sides:
            - BranchSide:      'unichar.c:145,33'
              BranchSideFuncs:
                - uni_utf8_get_char_n
                - array_append_i.10602
            - BranchSide:      'unichar.c:152,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:146,7'
          Branch Sides:
            - BranchSide:      'unichar.c:147,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:148,12'
              BranchSideFuncs:
                - array_append_i.10602
                - uni_utf8_get_char_n
      Callsites:
        - Src:             'unichar.c:145,13'
          Dst:             uni_utf8_get_char_n
        - Src:             'unichar.c:150,3'
          Dst:             array_append_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    uni_utf8_to_ucs4
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - output
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_append_i
        - uni_utf8_get_char
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:126,2'
          Branch Sides:
            - BranchSide:      'unichar.c:127,31'
              BranchSideFuncs:
                - uni_utf8_get_char
                - array_append_i.10602
            - BranchSide:      'unichar.c:136,2'
              BranchSideFuncs: []
        - Branch String:   'unichar.c:128,7'
          Branch Sides:
            - BranchSide:      'unichar.c:130,4'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:132,26'
              BranchSideFuncs:
                - array_append_i.10602
                - uni_utf8_get_char
      Callsites:
        - Src:             'unichar.c:127,13'
          Dst:             uni_utf8_get_char
        - Src:             'unichar.c:134,3'
          Dst:             array_append_i
    - functionName:    uni_utf8_get_char
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - input
        - chr_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_parse_char
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:109,9'
          Dst:             uni_utf8_parse_char
    - functionName:    uni_utf8_get_char_buf
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - buffer
        - size
        - chr_r
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_utf8_parse_char
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unichar.c:119,9'
          Dst:             uni_utf8_parse_char
    - functionName:    uni_strlen
      functionSourceFile: '/src/dovecot/src/lib/unichar.c'
      linkageType:     externalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         5
      ICount:          32
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unichar.c:25,2'
          Branch Sides:
            - BranchSide:      'unichar.c:25,34'
              BranchSideFuncs: []
            - BranchSide:      'unichar.c:27,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    unicode_code_point_data_get_casefold_mapping
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp_data
        - map_r
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_code_point_data_get_lowercase_mapping
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp_data
        - map_r
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_code_point_data_get_uppercase_mapping
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp_data
        - map_r
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_casemap_input_cp
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 974
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - map
        - cp
        - cp_data
        - error_r
      BBCount:         22
      ICount:          203
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - i_panic
        - unicode_code_point_get_data
        - uniform_transform_forward
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unicode-transform.c:978,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:979,41'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - uniform_transform_forward
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:982,47'
              BranchSideFuncs:
                - uniform_transform_forward
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:986,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:987,11'
              BranchSideFuncs:
                - uniform_transform_forward
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:991,2'
              BranchSideFuncs:
                - uniform_transform_forward
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:991,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:991,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:993,13'
              BranchSideFuncs:
                - uniform_transform_forward
                - i_panic
        - Branch String:   'unicode-transform.c:998,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:999,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1002,14'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:999,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:999,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1000,3'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:1002,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1003,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:1010,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:979,13'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:991,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:995,9'
          Dst:             uniform_transform_forward
        - Src:             'unicode-transform.c:999,3'
          Dst:             i_panic
    - functionName:    unicode_code_point_get_data
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - cp
      BBCount:         1
      ICount:          73
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uniform_transform_forward
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - out
        - out_data
        - out_len
        - error_r
      BBCount:         26
      ICount:          167
      EdgeCount:       27
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unicode-transform.c:28,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:28,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:29,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:29,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:29,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:30,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:30,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:30,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:31,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:33,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:33,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:33,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:33,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:33,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:34,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:34,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:34,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:34,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:28,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:29,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:30,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:33,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:34,2'
          Dst:             i_panic
    - functionName:    unicode_casemap_flush
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1054
      functionLinenumberEnd: 1065
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - finished
        - error_r
      BBCount:         13
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - i_panic
        - unicode_casemap_input_cp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:1059,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1060,3'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
            - BranchSide:      'unicode-transform.c:1062,33'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
        - Branch String:   'unicode-transform.c:1063,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1063,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1063,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:1063,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1063,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1064,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:1062,8'
          Dst:             unicode_casemap_input_cp
        - Src:             'unicode-transform.c:1063,2'
          Dst:             i_panic
    - functionName:    unicode_casemap_input
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1020
      functionLinenumberEnd: 1049
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - buf
        - error_r
      BBCount:         30
      ICount:          172
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - i_panic
        - unicode_casemap_flush
        - unicode_casemap_input_cp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unicode-transform.c:1026,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1027,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1030,6'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
        - Branch String:   'unicode-transform.c:1027,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1027,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1028,3'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:1030,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1031,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:1034,9'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
        - Branch String:   'unicode-transform.c:1034,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1035,7'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
            - BranchSide:      'unicode-transform.c:1048,9'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:1035,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1036,4'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:1037,34'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
        - Branch String:   'unicode-transform.c:1038,14'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1039,14'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
            - BranchSide:      'unicode-transform.c:1040,13'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
        - Branch String:   'unicode-transform.c:1041,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1042,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1045,7'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
        - Branch String:   'unicode-transform.c:1042,4'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1042,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:1043,4'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:1045,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1046,4'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:1047,2'
              BranchSideFuncs:
                - unicode_casemap_input_cp
                - i_panic
      Callsites:
        - Src:             'unicode-transform.c:1025,8'
          Dst:             unicode_casemap_flush
        - Src:             'unicode-transform.c:1027,3'
          Dst:             i_panic
        - Src:             'unicode-transform.c:1037,9'
          Dst:             unicode_casemap_input_cp
        - Src:             'unicode-transform.c:1042,4'
          Dst:             i_panic
    - functionName:    unicode_nf_check_sink_input
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 796
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - buf
        - error_r
      BBCount:         21
      ICount:          155
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unicode-transform.c:801,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:801,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:802,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:802,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:802,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:803,9'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:803,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:804,7'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:809,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:804,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:805,5'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:808,2'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:809,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:810,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:812,22'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:801,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:802,2'
          Dst:             i_panic
    - functionName:    unicode_code_point_data_find_composition
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - cp_data
        - second
      BBCount:         11
      ICount:          98
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './unicode-data.h:67,2'
          Branch Sides:
            - BranchSide:      './unicode-data.h:68,23'
              BranchSideFuncs: []
            - BranchSide:      './unicode-data.h:80,2'
              BranchSideFuncs: []
        - Branch String:   './unicode-data.h:70,7'
          Branch Sides:
            - BranchSide:      './unicode-data.h:71,15'
              BranchSideFuncs: []
            - BranchSide:      './unicode-data.h:72,12'
              BranchSideFuncs: []
        - Branch String:   './unicode-data.h:72,12'
          Branch Sides:
            - BranchSide:      './unicode-data.h:73,16'
              BranchSideFuncs: []
            - BranchSide:      './unicode-data.h:76,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    unicode_hangul_compose_pair
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - l
        - r
      BBCount:         22
      ICount:          142
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:253,29'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:253,32'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:264,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:253,53'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:254,6'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:264,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:254,29'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:254,32'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:264,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:253,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:255,21'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:264,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:264,29'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:264,32'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:272,2'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:264,53'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:265,6'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:272,2'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:265,35'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:265,38'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:272,2'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:265,59'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:266,8'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:272,2'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:264,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:267,22'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:272,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    unicode_nf_buffer_delete
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - offset
        - count
      BBCount:         23
      ICount:          159
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unicode-transform.c:333,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:334,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:336,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:336,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:336,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:337,2'
              BranchSideFuncs:
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:337,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:337,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:338,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:338,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:338,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:340,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:340,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:341,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:345,19'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:346,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:347,12'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:354,21'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:336,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:337,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:338,2'
          Dst:             i_panic
    - functionName:    unicode_nf_compose_pair
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - l
        - r
        - l_data
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - unicode_code_point_data_find_composition
        - unicode_code_point_get_data
        - unicode_hangul_compose_pair
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:613,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:614,10'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:616,7'
              BranchSideFuncs:
                - unicode_code_point_data_find_composition
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:616,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:617,41'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - unicode_code_point_data_find_composition
            - BranchSide:      'unicode-transform.c:618,51'
              BranchSideFuncs:
                - unicode_code_point_data_find_composition
      Callsites:
        - Src:             'unicode-transform.c:611,18'
          Dst:             unicode_hangul_compose_pair
        - Src:             'unicode-transform.c:617,13'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:618,9'
          Dst:             unicode_code_point_data_find_composition
    - functionName:    unicode_nf_flush_more
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - finished
        - error_r
      BBCount:         56
      ICount:          443
      EdgeCount:       72
      CyclomaticComplexity: 18
      functionsReached:
        - i_panic
        - unicode_code_point_get_data
        - unicode_nf_buffer_delete
        - unicode_nf_compose_pair
        - uniform_transform_forward
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unicode-transform.c:629,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:630,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:631,7'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
                - i_panic
        - Branch String:   'unicode-transform.c:631,16'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:631,19'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
                - i_panic
            - BranchSide:      'unicode-transform.c:638,6'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
                - i_panic
        - Branch String:   'unicode-transform.c:631,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:632,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:638,6'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
                - i_panic
        - Branch String:   'unicode-transform.c:638,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:639,28'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
                - i_panic
            - BranchSide:      'unicode-transform.c:640,2'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
                - i_panic
        - Branch String:   'unicode-transform.c:640,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:640,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:641,6'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:641,19'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:641,22'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:690,26'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
        - Branch String:   'unicode-transform.c:641,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:645,11'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:690,26'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
        - Branch String:   'unicode-transform.c:648,17'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:648,15'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:648,15'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:648,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:650,18'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:682,7'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
        - Branch String:   'unicode-transform.c:654,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:656,34'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
            - BranchSide:      'unicode-transform.c:659,18'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_code_point_get_data.10711
                - unicode_nf_compose_pair
        - Branch String:   'unicode-transform.c:661,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:663,6'
              BranchSideFuncs:
                - unicode_nf_compose_pair
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:666,8'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:666,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:667,31'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:669,15'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:669,15'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:670,15'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:676,16'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
                - unicode_nf_compose_pair
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:682,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:683,47'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
            - BranchSide:      'unicode-transform.c:684,14'
              BranchSideFuncs:
                - uniform_transform_forward
                - unicode_nf_buffer_delete
                - i_panic
                - unicode_nf_buffer_delete
        - Branch String:   'unicode-transform.c:701,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:702,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:704,2'
              BranchSideFuncs:
                - unicode_nf_buffer_delete
                - i_panic
        - Branch String:   'unicode-transform.c:704,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:704,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:705,27'
              BranchSideFuncs:
                - unicode_nf_buffer_delete
        - Branch String:   'unicode-transform.c:708,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:709,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:710,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:640,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:656,6'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:662,12'
          Dst:             unicode_nf_compose_pair
        - Src:             'unicode-transform.c:685,4'
          Dst:             unicode_nf_buffer_delete
        - Src:             'unicode-transform.c:699,9'
          Dst:             uniform_transform_forward
        - Src:             'unicode-transform.c:704,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:705,2'
          Dst:             unicode_nf_buffer_delete
    - functionName:    unicode_nf_buffer_swap
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ctx
        - idx1
        - idx2
      BBCount:         1
      ICount:          61
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_code_point_data_get_full_decomposition
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp_data
        - canonical
        - decomp_r
      BBCount:         4
      ICount:          59
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   './unicode-data.h:48,6'
          Branch Sides:
            - BranchSide:      './unicode-data.h:49,12'
              BranchSideFuncs: []
            - BranchSide:      './unicode-data.h:53,11'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    unicode_nf_cp
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 552
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - cp
        - cpd
      BBCount:         109
      ICount:          705
      EdgeCount:       135
      CyclomaticComplexity: 28
      functionsReached:
        - i_panic
        - unicode_code_point_data_get_full_decomposition
        - unicode_code_point_get_data
        - unicode_hangul_decompose
        - unicode_nf_buffer_swap
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unicode-transform.c:386,25'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:386,28'
              BranchSideFuncs:
                - unicode_code_point_data_get_full_decomposition
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_data_get_full_decomposition
                - unicode_code_point_get_data.10711
                - unicode_hangul_decompose
            - BranchSide:      'unicode-transform.c:390,7'
              BranchSideFuncs:
                - unicode_code_point_data_get_full_decomposition
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_data_get_full_decomposition
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:386,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:387,42'
              BranchSideFuncs:
                - unicode_hangul_decompose
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:390,7'
              BranchSideFuncs:
                - unicode_code_point_data_get_full_decomposition
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_data_get_full_decomposition
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:390,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:391,38'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - unicode_code_point_data_get_full_decomposition
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_data_get_full_decomposition
            - BranchSide:      'unicode-transform.c:393,4'
              BranchSideFuncs:
                - unicode_code_point_data_get_full_decomposition
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_data_get_full_decomposition
        - Branch String:   'unicode-transform.c:394,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:395,11'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_data_get_full_decomposition
            - BranchSide:      'unicode-transform.c:398,11'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_data_get_full_decomposition
        - Branch String:   'unicode-transform.c:400,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:402,5'
              BranchSideFuncs:
                - unicode_code_point_data_get_full_decomposition
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:408,7'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:403,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:404,16'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:407,3'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:412,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:412,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:413,2'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:413,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:413,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:415,7'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - i_panic
        - Branch String:   'unicode-transform.c:415,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:419,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:453,9'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:419,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:419,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:420,25'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:455,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:456,7'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:476,6'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:456,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:457,38'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:459,17'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:461,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:462,20'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:466,7'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:466,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:467,17'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:468,13'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:468,12'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:469,11'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:471,12'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:476,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:477,10'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:485,27'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:477,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:478,8'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:483,2'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:478,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:479,39'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
            - BranchSide:      'unicode-transform.c:480,20'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
                - unicode_code_point_get_data.10711
                - unicode_code_point_get_data.10711
        - Branch String:   'unicode-transform.c:486,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:487,27'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:501,2'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:501,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:501,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:502,7'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:502,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:506,3'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
            - BranchSide:      'unicode-transform.c:511,10'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
        - Branch String:   'unicode-transform.c:506,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:506,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:507,25'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
        - Branch String:   'unicode-transform.c:511,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:512,38'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
            - BranchSide:      'unicode-transform.c:516,3'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
                - i_panic
        - Branch String:   'unicode-transform.c:516,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:0,0'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:516,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:527,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:528,11'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
            - BranchSide:      'unicode-transform.c:551,27'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:532,12'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:532,10'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
            - BranchSide:      'unicode-transform.c:532,10'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
        - Branch String:   'unicode-transform.c:532,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:527,2'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
            - BranchSide:      'unicode-transform.c:535,14'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
        - Branch String:   'unicode-transform.c:541,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:542,20'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
            - BranchSide:      'unicode-transform.c:545,15'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
        - Branch String:   'unicode-transform.c:543,9'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:544,18'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
            - BranchSide:      'unicode-transform.c:545,4'
              BranchSideFuncs:
                - unicode_nf_buffer_swap
        - Branch String:   'unicode-transform.c:551,27'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:551,2'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:551,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:387,17'
          Dst:             unicode_hangul_decompose
        - Src:             'unicode-transform.c:391,10'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:392,9'
          Dst:             unicode_code_point_data_get_full_decomposition
        - Src:             'unicode-transform.c:401,12'
          Dst:             unicode_code_point_data_get_full_decomposition
        - Src:             'unicode-transform.c:412,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:413,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:419,3'
          Dst:             i_panic
        - Src:             'unicode-transform.c:457,10'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:479,11'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:493,4'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:501,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:506,3'
          Dst:             i_panic
        - Src:             'unicode-transform.c:516,3'
          Dst:             i_panic
        - Src:             'unicode-transform.c:546,5'
          Dst:             unicode_nf_buffer_swap
    - functionName:    unicode_hangul_decompose
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp
        - buf
      BBCount:         4
      ICount:          82
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unicode-transform.c:232,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:233,12'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:238,40'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    unicode_nf_input_cp
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - cp
        - cpd
      BBCount:         28
      ICount:          153
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - i_panic
        - unicode_nf_cp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:560,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:560,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:561,6'
              BranchSideFuncs:
                - unicode_nf_cp
                - unicode_nf_cp
                - i_panic
        - Branch String:   'unicode-transform.c:561,37'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:562,7'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:565,3'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:562,31'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:563,7'
              BranchSideFuncs:
                - unicode_nf_cp
                - unicode_nf_cp
                - i_panic
            - BranchSide:      'unicode-transform.c:568,6'
              BranchSideFuncs:
                - unicode_nf_cp
                - unicode_nf_cp
                - i_panic
        - Branch String:   'unicode-transform.c:561,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:565,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:568,6'
              BranchSideFuncs:
                - unicode_nf_cp
                - unicode_nf_cp
                - i_panic
        - Branch String:   'unicode-transform.c:568,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:572,17'
              BranchSideFuncs:
                - unicode_nf_cp
                - unicode_nf_cp
                - i_panic
            - BranchSide:      'unicode-transform.c:585,16'
              BranchSideFuncs:
                - unicode_nf_cp
        - Branch String:   'unicode-transform.c:575,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:575,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:576,7'
              BranchSideFuncs:
                - unicode_nf_cp
        - Branch String:   'unicode-transform.c:576,34'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:577,7'
              BranchSideFuncs:
                - unicode_nf_cp
            - BranchSide:      'unicode-transform.c:582,2'
              BranchSideFuncs:
                - unicode_nf_cp
        - Branch String:   'unicode-transform.c:576,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:580,4'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:582,2'
              BranchSideFuncs:
                - unicode_nf_cp
      Callsites:
        - Src:             'unicode-transform.c:560,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:572,3'
          Dst:             unicode_nf_cp
        - Src:             'unicode-transform.c:575,3'
          Dst:             i_panic
        - Src:             'unicode-transform.c:585,2'
          Dst:             unicode_nf_cp
    - functionName:    unicode_nf_flush
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - finished
        - error_r
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - unicode_nf_cp
        - unicode_nf_flush_more
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unicode-transform.c:722,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:723,10'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:725,6'
              BranchSideFuncs:
                - unicode_nf_flush_more
                - unicode_nf_cp
        - Branch String:   'unicode-transform.c:725,15'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:725,18'
              BranchSideFuncs:
                - unicode_nf_flush_more
                - unicode_nf_cp
            - BranchSide:      'unicode-transform.c:730,31'
              BranchSideFuncs:
                - unicode_nf_flush_more
        - Branch String:   'unicode-transform.c:725,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:726,17'
              BranchSideFuncs:
                - unicode_nf_cp
                - unicode_nf_flush_more
            - BranchSide:      'unicode-transform.c:730,31'
              BranchSideFuncs:
                - unicode_nf_flush_more
      Callsites:
        - Src:             'unicode-transform.c:721,8'
          Dst:             unicode_nf_flush_more
        - Src:             'unicode-transform.c:726,3'
          Dst:             unicode_nf_cp
        - Src:             'unicode-transform.c:730,9'
          Dst:             unicode_nf_flush_more
    - functionName:    unicode_nf_input
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - buf
        - error_r
      BBCount:         13
      ICount:          83
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - unicode_nf_input_cp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unicode-transform.c:598,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:598,2'
              BranchSideFuncs:
                - unicode_nf_input_cp
            - BranchSide:      'unicode-transform.c:599,28'
              BranchSideFuncs:
                - unicode_nf_input_cp
        - Branch String:   'unicode-transform.c:600,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:599,8'
              BranchSideFuncs:
                - unicode_nf_input_cp
            - BranchSide:      'unicode-transform.c:601,15'
              BranchSideFuncs:
                - unicode_nf_input_cp
        - Branch String:   'unicode-transform.c:599,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:602,4'
              BranchSideFuncs:
                - unicode_nf_input_cp
            - BranchSide:      'unicode-transform.c:603,2'
              BranchSideFuncs:
                - unicode_nf_input_cp
      Callsites:
        - Src:             'unicode-transform.c:599,8'
          Dst:             unicode_nf_input_cp
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    unicode_static_array_sink_input
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - buf
        - error_r
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - i_memcpy
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unicode-transform.c:190,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:191,4'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:194,2'
              BranchSideFuncs:
                - i_memcpy.10734
      Callsites:
        - Src:             'unicode-transform.c:194,2'
          Dst:             i_memcpy
    - functionName:    unicode_buffer_sink_input
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - buf
        - error_r
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uni_ucs4_to_utf8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:154,2'
          Dst:             uni_ucs4_to_utf8
    - functionName:    unicode_code_point_get_full_decomposition
      functionSourceFile: '/src/dovecot/src/lib/./unicode-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp
        - canonical
        - decomp_r
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_code_point_data_get_full_decomposition
        - unicode_code_point_get_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './unicode-data.h:88,3'
          Dst:             unicode_code_point_get_data
        - Src:             './unicode-data.h:90,9'
          Dst:             unicode_code_point_data_get_full_decomposition
    - functionName:    unicode_rfc5051_normalize
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 1078
      functionLinenumberEnd: 1098
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - cp
        - norm_r
      BBCount:         14
      ICount:          107
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unicode_code_point_get_data
        - unicode_code_point_get_full_decomposition
        - unicode_hangul_decompose
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:1083,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1084,8'
              BranchSideFuncs:
                - unicode_code_point_get_full_decomposition
                - unicode_hangul_decompose
            - BranchSide:      'unicode-transform.c:1086,6'
              BranchSideFuncs:
                - unicode_code_point_get_full_decomposition
                - unicode_hangul_decompose
        - Branch String:   'unicode-transform.c:1086,25'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1086,28'
              BranchSideFuncs:
                - unicode_code_point_get_full_decomposition
                - unicode_hangul_decompose
            - BranchSide:      'unicode-transform.c:1091,50'
              BranchSideFuncs:
                - unicode_code_point_get_full_decomposition
        - Branch String:   'unicode-transform.c:1086,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1087,13'
              BranchSideFuncs:
                - unicode_hangul_decompose
            - BranchSide:      'unicode-transform.c:1091,50'
              BranchSideFuncs:
                - unicode_code_point_get_full_decomposition
        - Branch String:   'unicode-transform.c:1092,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:1093,20'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:1097,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:1082,8'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:1088,10'
          Dst:             unicode_hangul_decompose
        - Src:             'unicode-transform.c:1091,8'
          Dst:             unicode_code_point_get_full_decomposition
    - functionName:    unicode_rfc5051_init
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 1072
      functionLinenumberEnd: 1074
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_casemap_casefold_cp
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 966
      functionLinenumberEnd: 967
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp_data
        - map_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_code_point_data_get_casefold_mapping
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:967,9'
          Dst:             unicode_code_point_data_get_casefold_mapping
    - functionName:    unicode_casemap_init_casefold
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 943
      functionLinenumberEnd: 947
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - map_r
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_transform_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:945,2'
          Dst:             unicode_transform_init
    - functionName:    unicode_transform_init
      functionSourceFile: '/src/dovecot/src/lib/./unicode-transform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - def
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_casemap_lowercase_cp
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 960
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp_data
        - map_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_code_point_data_get_lowercase_mapping
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:960,9'
          Dst:             unicode_code_point_data_get_lowercase_mapping
    - functionName:    unicode_casemap_init_lowercase
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 940
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - map_r
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_transform_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:938,2'
          Dst:             unicode_transform_init
    - functionName:    unicode_casemap_uppercase_cp
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 952
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - cp_data
        - map_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_code_point_data_get_uppercase_mapping
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:953,9'
          Dst:             unicode_code_point_data_get_uppercase_mapping
    - functionName:    unicode_casemap_init_uppercase
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - map_r
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_transform_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:931,2'
          Dst:             unicode_transform_init
    - functionName:    unicode_nf_checker_finish
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - unc
      BBCount:         10
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
        - unicode_transform_flush
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:890,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:891,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:896,33'
              BranchSideFuncs:
                - unicode_transform_flush
                - i_panic
        - Branch String:   'unicode-transform.c:897,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:897,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:898,10'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:896,8'
          Dst:             unicode_transform_flush
        - Src:             'unicode-transform.c:897,2'
          Dst:             i_panic
    - functionName:    unicode_transform_flush
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - error_r
      BBCount:         30
      ICount:          152
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unicode-transform.c:98,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:99,34'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:124,2'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:102,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:103,8'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:121,8'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:103,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:104,14'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:108,11'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:105,9'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:106,14'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:107,4'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:109,9'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:110,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:113,9'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:110,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:110,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:111,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:115,10'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:116,15'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:117,5'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:121,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:98,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:122,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:110,6'
          Dst:             i_panic
    - functionName:    unicode_nf_checker_input
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 821
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - unc
        - cp
        - _cp_data
      BBCount:         57
      ICount:          382
      EdgeCount:       71
      CyclomaticComplexity: 16
      functionsReached:
        - i_panic
        - unicode_code_point_get_data
        - unicode_nf_reset
        - unicode_transform_flush
        - unicode_transform_input_buf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:824,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:825,43'
              BranchSideFuncs:
                - unicode_code_point_get_data.10711
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
            - BranchSide:      'unicode-transform.c:827,51'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:833,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:834,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:835,7'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:835,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:836,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:837,6'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:837,23'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:837,26'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
            - BranchSide:      'unicode-transform.c:841,7'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:837,66'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:838,6'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
            - BranchSide:      'unicode-transform.c:841,7'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:837,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:840,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:841,7'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:841,68'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:842,6'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
            - BranchSide:      'unicode-transform.c:859,6'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
        - Branch String:   'unicode-transform.c:841,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:843,7'
              BranchSideFuncs:
                - i_panic
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
            - BranchSide:      'unicode-transform.c:859,6'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
        - Branch String:   'unicode-transform.c:843,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:844,35'
              BranchSideFuncs:
                - unicode_transform_flush
                - unicode_nf_reset
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:851,3'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'unicode-transform.c:846,4'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:846,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:847,8'
              BranchSideFuncs:
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:847,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:848,5'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:849,22'
              BranchSideFuncs:
                - unicode_nf_reset
                - i_panic
        - Branch String:   'unicode-transform.c:851,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:851,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:852,23'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:859,27'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:859,30'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - unicode_transform_input_buf
                - i_panic
            - BranchSide:      'unicode-transform.c:873,2'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:859,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:860,3'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - unicode_transform_input_buf
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:873,2'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:868,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:868,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:869,7'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:869,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:870,4'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:871,2'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:873,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:873,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:874,36'
              BranchSideFuncs:
                - unicode_transform_input_buf
                - i_panic
        - Branch String:   'unicode-transform.c:882,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:882,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:883,6'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:883,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:884,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:885,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:825,15'
          Dst:             unicode_code_point_get_data
        - Src:             'unicode-transform.c:844,10'
          Dst:             unicode_transform_flush
        - Src:             'unicode-transform.c:846,4'
          Dst:             i_panic
        - Src:             'unicode-transform.c:849,4'
          Dst:             unicode_nf_reset
        - Src:             'unicode-transform.c:851,3'
          Dst:             i_panic
        - Src:             'unicode-transform.c:866,10'
          Dst:             unicode_transform_input_buf
        - Src:             'unicode-transform.c:868,3'
          Dst:             i_panic
        - Src:             'unicode-transform.c:873,2'
          Dst:             i_panic
        - Src:             'unicode-transform.c:881,9'
          Dst:             unicode_transform_input_buf
        - Src:             'unicode-transform.c:882,2'
          Dst:             i_panic
    - functionName:    unicode_nf_reset
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - unicode_nf_init
        - unicode_transform_chain
      functionUses:    1
      BranchProfiles:
        - Branch String:   'unicode-transform.c:321,4'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:321,20'
              BranchSideFuncs:
                - unicode_nf_init
                - unicode_transform_chain.10765
            - BranchSide:      'unicode-transform.c:322,6'
              BranchSideFuncs:
                - unicode_nf_init
                - unicode_transform_chain.10765
      Callsites:
        - Src:             'unicode-transform.c:325,2'
          Dst:             unicode_nf_init
        - Src:             'unicode-transform.c:326,2'
          Dst:             unicode_transform_chain
    - functionName:    unicode_transform_input_buf
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - buf
        - error_r
      BBCount:         44
      ICount:          251
      EdgeCount:       53
      CyclomaticComplexity: 11
      functionsReached:
        - i_panic
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unicode-transform.c:52,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:53,14'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:88,9'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:53,7'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:54,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:72,34'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:54,4'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:54,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:55,11'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:56,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:57,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:60,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:57,5'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:57,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:58,5'
              BranchSideFuncs: []
        - Branch String:   'unicode-transform.c:60,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:61,5'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:68,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:61,5'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:61,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:62,18'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:68,18'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:68,21'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:70,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:68,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:69,5'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:70,3'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:74,3'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:75,8'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:85,11'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:75,8'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:76,11'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
            - BranchSide:      'unicode-transform.c:82,9'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:77,9'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:78,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:81,4'
              BranchSideFuncs:
                - i_panic
                - i_panic
                - i_panic
                - i_panic
        - Branch String:   'unicode-transform.c:78,6'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:78,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'unicode-transform.c:79,6'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:54,4'
          Dst:             i_panic
        - Src:             'unicode-transform.c:57,5'
          Dst:             i_panic
        - Src:             'unicode-transform.c:61,5'
          Dst:             i_panic
        - Src:             'unicode-transform.c:78,6'
          Dst:             i_panic
    - functionName:    unicode_nf_init
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ctx_r
        - type
      BBCount:         9
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - unicode_transform_init
      functionUses:    3
      BranchProfiles:
        - Branch String:   'unicode-transform.c:298,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:298,2'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:300,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:304,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:307,3'
              BranchSideFuncs: []
            - BranchSide:      'unicode-transform.c:312,3'
              BranchSideFuncs: []
      Callsites:
        - Src:             'unicode-transform.c:296,2'
          Dst:             unicode_transform_init
    - functionName:    unicode_transform_chain
      functionSourceFile: '/src/dovecot/src/lib/./unicode-transform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - trans
        - next
      BBCount:         7
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './unicode-transform.h:46,2'
          Branch Sides:
            - BranchSide:      './unicode-transform.h:46,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './unicode-transform.h:46,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './unicode-transform.h:46,2'
          Dst:             i_panic
    - functionName:    unicode_nf_checker_reset
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - unc
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - unicode_nf_checker_init
      functionUses:    0
      BranchProfiles:
        - Branch String:   'unicode-transform.c:786,4'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:786,20'
              BranchSideFuncs:
                - unicode_nf_checker_init
            - BranchSide:      'unicode-transform.c:787,6'
              BranchSideFuncs:
                - unicode_nf_checker_init
      Callsites:
        - Src:             'unicode-transform.c:789,2'
          Dst:             unicode_nf_checker_init
    - functionName:    unicode_nf_checker_init
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - unc_r
        - type
      BBCount:         9
      ICount:          116
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - unicode_nf_init
        - unicode_transform_chain
        - unicode_transform_init
      functionUses:    2
      BranchProfiles:
        - Branch String:   'unicode-transform.c:751,2'
          Branch Sides:
            - BranchSide:      'unicode-transform.c:751,2'
              BranchSideFuncs:
                - unicode_nf_init
                - unicode_transform_init
                - unicode_transform_chain.10765
            - BranchSide:      'unicode-transform.c:753,3'
              BranchSideFuncs:
                - unicode_nf_init
                - unicode_transform_init
                - unicode_transform_chain.10765
            - BranchSide:      'unicode-transform.c:759,3'
              BranchSideFuncs:
                - unicode_nf_init
                - unicode_transform_init
                - unicode_transform_chain.10765
            - BranchSide:      'unicode-transform.c:764,3'
              BranchSideFuncs:
                - unicode_nf_init
                - unicode_transform_init
                - unicode_transform_chain.10765
            - BranchSide:      'unicode-transform.c:771,3'
              BranchSideFuncs:
                - unicode_nf_init
                - unicode_transform_init
                - unicode_transform_chain.10765
      Callsites:
        - Src:             'unicode-transform.c:778,2'
          Dst:             unicode_nf_init
        - Src:             'unicode-transform.c:779,2'
          Dst:             unicode_transform_init
        - Src:             'unicode-transform.c:780,2'
          Dst:             unicode_transform_chain
    - functionName:    unicode_static_array_sink_init
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - sink
        - array
        - array_size
        - array_pos
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_transform_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:174,2'
          Dst:             unicode_transform_init
    - functionName:    unicode_buffer_sink_init
      functionSourceFile: '/src/dovecot/src/lib/unicode-transform.c'
      linkageType:     externalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - sink
        - buffer
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unicode_transform_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'unicode-transform.c:142,2'
          Dst:             unicode_transform_init
    - functionName:    utc_offset
      functionSourceFile: '/src/dovecot/src/lib/utc-offset.c'
      linkageType:     externalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 11
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - tm
        - t
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tm_cmp
      functionSourceFile: '/src/dovecot/src/lib/utc-mktime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - tm1
        - tm2
      BBCount:         12
      ICount:          111
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utc-mktime.c:10,6'
          Branch Sides:
            - BranchSide:      'utc-mktime.c:11,10'
              BranchSideFuncs: []
            - BranchSide:      'utc-mktime.c:12,14'
              BranchSideFuncs: []
        - Branch String:   'utc-mktime.c:12,6'
          Branch Sides:
            - BranchSide:      'utc-mktime.c:13,10'
              BranchSideFuncs: []
            - BranchSide:      'utc-mktime.c:14,14'
              BranchSideFuncs: []
        - Branch String:   'utc-mktime.c:14,6'
          Branch Sides:
            - BranchSide:      'utc-mktime.c:15,10'
              BranchSideFuncs: []
            - BranchSide:      'utc-mktime.c:16,14'
              BranchSideFuncs: []
        - Branch String:   'utc-mktime.c:16,6'
          Branch Sides:
            - BranchSide:      'utc-mktime.c:17,10'
              BranchSideFuncs: []
            - BranchSide:      'utc-mktime.c:18,14'
              BranchSideFuncs: []
        - Branch String:   'utc-mktime.c:18,6'
          Branch Sides:
            - BranchSide:      'utc-mktime.c:19,10'
              BranchSideFuncs: []
            - BranchSide:      'utc-mktime.c:20,9'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    adjust_leap_second
      functionSourceFile: '/src/dovecot/src/lib/utc-mktime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - tm
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utc-mktime.c:25,6'
          Branch Sides:
            - BranchSide:      'utc-mktime.c:25,6'
              BranchSideFuncs: []
            - BranchSide:      'utc-mktime.c:26,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    utc_mktime
      functionSourceFile: '/src/dovecot/src/lib/utc-mktime.c'
      linkageType:     externalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - tm
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - adjust_leap_second
        - timegm
        - tm_cmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utc-mktime.c:41,6'
          Branch Sides:
            - BranchSide:      'utc-mktime.c:42,3'
              BranchSideFuncs: []
            - BranchSide:      'utc-mktime.c:43,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'utc-mktime.c:36,2'
          Dst:             adjust_leap_second
        - Src:             'utc-mktime.c:40,6'
          Dst:             timegm
        - Src:             'utc-mktime.c:41,6'
          Dst:             tm_cmp
    - functionName:    timegm
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_escaped
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - p
        - start
      BBCount:         7
      ICount:          51
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'wildcard-match.c:31,20'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:31,23'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:31,3'
              BranchSideFuncs: []
        - Branch String:   'wildcard-match.c:31,3'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:32,19'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:35,10'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    str_append_c
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - str
        - chr
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append_c
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:44,2'
          Dst:             buffer_append_c
    - functionName:    str_append_data
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - str
        - data
        - len
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:39,2'
          Dst:             buffer_append
    - functionName:    wildcard_str_escape
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     externalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         10
      ICount:          82
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - str_append
        - str_append_c
        - str_append_data
        - str_c
        - strlen
        - strpbrk
        - t_str_new
      functionUses:    3
      BranchProfiles:
        - Branch String:   'wildcard-match.c:176,6'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:177,10'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:179,29'
              BranchSideFuncs:
                - strlen
                - t_str_new
                - str_append_data.10822
                - str_append_c.10821
                - str_append_c.10821
                - strpbrk
                - str_append.10820
                - str_c
        - Branch String:   'wildcard-match.c:187,2'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:181,19'
              BranchSideFuncs:
                - str_append_data.10822
                - str_append_c.10821
                - str_append_c.10821
                - strpbrk
                - str_append.10820
                - str_c
            - BranchSide:      'wildcard-match.c:188,13'
              BranchSideFuncs:
                - str_append.10820
                - str_c
      Callsites:
        - Src:             'wildcard-match.c:175,18'
          Dst:             strpbrk
        - Src:             'wildcard-match.c:179,40'
          Dst:             strlen
        - Src:             'wildcard-match.c:179,18'
          Dst:             t_str_new
        - Src:             'wildcard-match.c:181,3'
          Dst:             str_append_data
        - Src:             'wildcard-match.c:182,3'
          Dst:             str_append_c
        - Src:             'wildcard-match.c:183,3'
          Dst:             str_append_c
        - Src:             'wildcard-match.c:186,7'
          Dst:             strpbrk
        - Src:             'wildcard-match.c:188,2'
          Dst:             str_append
        - Src:             'wildcard-match.c:189,9'
          Dst:             str_c
    - functionName:    wildcard_is_escaped_literal
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     externalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - mask
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strpbrk
      functionUses:    2
      BranchProfiles:
        - Branch String:   'wildcard-match.c:163,2'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:164,8'
              BranchSideFuncs:
                - strpbrk
            - BranchSide:      'wildcard-match.c:170,2'
              BranchSideFuncs: []
        - Branch String:   'wildcard-match.c:164,7'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:165,4'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:166,7'
              BranchSideFuncs:
                - strpbrk
        - Branch String:   'wildcard-match.c:166,7'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:167,4'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:168,5'
              BranchSideFuncs:
                - strpbrk
      Callsites:
        - Src:             'wildcard-match.c:163,14'
          Dst:             strpbrk
    - functionName:    wildcard_match_escaped_icase
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     externalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - mask
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - wildcard_match_int
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'wildcard-match.c:156,9'
          Dst:             wildcard_match_int
    - functionName:    wildcard_match_int
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - data
        - mask
        - icase
        - escaped
      BBCount:         98
      ICount:          521
      EdgeCount:       130
      CyclomaticComplexity: 34
      functionsReached:
        - is_escaped
        - toupper
      functionUses:    4
      BranchProfiles:
        - Branch String:   'wildcard-match.c:45,7'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:47,4'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:51,3'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:47,4'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:47,27'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:48,11'
              BranchSideFuncs: []
        - Branch String:   'wildcard-match.c:48,11'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:48,27'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:48,4'
              BranchSideFuncs: []
        - Branch String:   'wildcard-match.c:51,3'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:51,16'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:52,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:53,3'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:53,16'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:54,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:56,3'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:59,9'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:133,3'
              BranchSideFuncs:
                - is_escaped
        - Branch String:   'wildcard-match.c:59,9'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:60,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:71,14'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:60,11'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:61,16'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:68,9'
              BranchSideFuncs: []
        - Branch String:   'wildcard-match.c:63,13'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:64,15'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:65,15'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:71,5'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:73,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:83,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
                - is_escaped
            - BranchSide:      'wildcard-match.c:103,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
            - BranchSide:      'wildcard-match.c:115,9'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
        - Branch String:   'wildcard-match.c:73,19'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:73,33'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
            - BranchSide:      'wildcard-match.c:81,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
        - Branch String:   'wildcard-match.c:73,11'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:74,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:81,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
        - Branch String:   'wildcard-match.c:74,6'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:75,4'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:76,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:83,19'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:83,33'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
            - BranchSide:      'wildcard-match.c:91,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
        - Branch String:   'wildcard-match.c:83,11'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:84,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:91,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
        - Branch String:   'wildcard-match.c:84,6'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:85,4'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:86,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:93,27'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:92,2'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
            - BranchSide:      'wildcard-match.c:93,32'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
        - Branch String:   'wildcard-match.c:93,47'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:92,2'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
            - BranchSide:      'wildcard-match.c:94,9'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
        - Branch String:   'wildcard-match.c:92,2'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:92,6'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
                - is_escaped
            - BranchSide:      'wildcard-match.c:95,13'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:99,11'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:100,9'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:101,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:103,19'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:103,33'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:111,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:103,11'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:104,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:111,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:104,6'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:105,4'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:106,7'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:115,9'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:115,18'
              BranchSideFuncs:
                - toupper
                - toupper
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
            - BranchSide:      'wildcard-match.c:116,4'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:115,9'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:116,17'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:117,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:115,9'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:116,17'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:117,11'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:123,9'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:124,14'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:131,5'
              BranchSideFuncs: []
        - Branch String:   'wildcard-match.c:126,11'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:127,13'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
            - BranchSide:      'wildcard-match.c:128,13'
              BranchSideFuncs:
                - is_escaped
                - is_escaped
                - is_escaped
                - is_escaped
                - toupper
                - toupper
                - is_escaped
        - Branch String:   'wildcard-match.c:133,23'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:133,28'
              BranchSideFuncs:
                - is_escaped
            - BranchSide:      'wildcard-match.c:133,3'
              BranchSideFuncs:
                - is_escaped
        - Branch String:   'wildcard-match.c:133,43'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:133,3'
              BranchSideFuncs:
                - is_escaped
            - BranchSide:      'wildcard-match.c:134,5'
              BranchSideFuncs:
                - is_escaped
        - Branch String:   'wildcard-match.c:133,3'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:135,9'
              BranchSideFuncs:
                - is_escaped
            - BranchSide:      'wildcard-match.c:136,11'
              BranchSideFuncs: []
        - Branch String:   'wildcard-match.c:136,10'
          Branch Sides:
            - BranchSide:      'wildcard-match.c:136,3'
              BranchSideFuncs: []
            - BranchSide:      'wildcard-match.c:136,35'
              BranchSideFuncs: []
      Callsites:
        - Src:             'wildcard-match.c:73,22'
          Dst:             is_escaped
        - Src:             'wildcard-match.c:83,22'
          Dst:             is_escaped
        - Src:             'wildcard-match.c:94,21'
          Dst:             is_escaped
        - Src:             'wildcard-match.c:103,22'
          Dst:             is_escaped
        - Src:             'wildcard-match.c:115,18'
          Dst:             toupper
        - Src:             'wildcard-match.c:115,38'
          Dst:             toupper
        - Src:             'wildcard-match.c:134,17'
          Dst:             is_escaped
    - functionName:    wildcard_match_escaped
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     externalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - mask
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - wildcard_match_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'wildcard-match.c:151,9'
          Dst:             wildcard_match_int
    - functionName:    wildcard_match_icase
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     externalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - mask
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - wildcard_match_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'wildcard-match.c:146,9'
          Dst:             wildcard_match_int
    - functionName:    wildcard_match
      functionSourceFile: '/src/dovecot/src/lib/wildcard-match.c'
      linkageType:     externalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - data
        - mask
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - wildcard_match_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'wildcard-match.c:141,9'
          Dst:             wildcard_match_int
    - functionName:    pwrite_full
      functionSourceFile: '/src/dovecot/src/lib/write-full.c'
      linkageType:     externalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - data
        - size
        - offset
      BBCount:         15
      ICount:          107
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - i_panic
        - pwrite
      functionUses:    2
      BranchProfiles:
        - Branch String:   'write-full.c:37,2'
          Branch Sides:
            - BranchSide:      'write-full.c:37,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'write-full.c:39,2'
              BranchSideFuncs:
                - pwrite
                - __errno_location
        - Branch String:   'write-full.c:39,2'
          Branch Sides:
            - BranchSide:      'write-full.c:40,16'
              BranchSideFuncs:
                - pwrite
                - __errno_location
            - BranchSide:      'write-full.c:56,2'
              BranchSideFuncs: []
        - Branch String:   'write-full.c:41,7'
          Branch Sides:
            - BranchSide:      'write-full.c:42,4'
              BranchSideFuncs: []
            - BranchSide:      'write-full.c:44,7'
              BranchSideFuncs:
                - pwrite
                - __errno_location
        - Branch String:   'write-full.c:44,7'
          Branch Sides:
            - BranchSide:      'write-full.c:47,4'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'write-full.c:51,10'
              BranchSideFuncs:
                - pwrite
                - __errno_location
      Callsites:
        - Src:             'write-full.c:37,2'
          Dst:             i_panic
        - Src:             'write-full.c:40,9'
          Dst:             pwrite
        - Src:             'write-full.c:47,4'
          Dst:             __errno_location
    - functionName:    write_full
      functionSourceFile: '/src/dovecot/src/lib/write-full.c'
      linkageType:     externalLinkage
      functionLinenumber: 9
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - fd
        - data
        - size
      BBCount:         15
      ICount:          99
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - i_panic
        - write
      functionUses:    3
      BranchProfiles:
        - Branch String:   'write-full.c:12,2'
          Branch Sides:
            - BranchSide:      'write-full.c:12,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'write-full.c:14,2'
              BranchSideFuncs:
                - write
                - __errno_location
        - Branch String:   'write-full.c:14,2'
          Branch Sides:
            - BranchSide:      'write-full.c:15,15'
              BranchSideFuncs:
                - write
                - __errno_location
            - BranchSide:      'write-full.c:30,2'
              BranchSideFuncs: []
        - Branch String:   'write-full.c:16,7'
          Branch Sides:
            - BranchSide:      'write-full.c:17,4'
              BranchSideFuncs: []
            - BranchSide:      'write-full.c:19,7'
              BranchSideFuncs:
                - write
                - __errno_location
        - Branch String:   'write-full.c:19,7'
          Branch Sides:
            - BranchSide:      'write-full.c:22,4'
              BranchSideFuncs:
                - __errno_location
            - BranchSide:      'write-full.c:26,10'
              BranchSideFuncs:
                - write
                - __errno_location
      Callsites:
        - Src:             'write-full.c:12,2'
          Dst:             i_panic
        - Src:             'write-full.c:15,9'
          Dst:             write
        - Src:             'write-full.c:22,4'
          Dst:             __errno_location
    - functionName:    str_begins_with
      functionSourceFile: '/src/dovecot/src/lib/./strfuncs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - haystack
        - needle
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - str_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './strfuncs.h:100,16'
          Dst:             str_match
    - functionName:    str_append
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - cstr
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './str.h:35,27'
          Dst:             strlen
        - Src:             './str.h:35,2'
          Dst:             buffer_append
    - functionName:    str_len
      functionSourceFile: '/src/dovecot/src/lib/./str.h'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    backtrace_get
      functionSourceFile: '/src/dovecot/src/lib/backtrace-string.c'
      linkageType:     externalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - backtrace_r
        - error_r
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - backtrace_append
        - str_c
        - t_str_new
      functionUses:    3
      BranchProfiles:
        - Branch String:   'backtrace-string.c:176,6'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:177,3'
              BranchSideFuncs: []
            - BranchSide:      'backtrace-string.c:179,23'
              BranchSideFuncs:
                - str_c
      Callsites:
        - Src:             'backtrace-string.c:175,8'
          Dst:             t_str_new
        - Src:             'backtrace-string.c:176,6'
          Dst:             backtrace_append
        - Src:             'backtrace-string.c:179,17'
          Dst:             str_c
    - functionName:    backtrace_append
      functionSourceFile: '/src/dovecot/src/lib/backtrace-string.c'
      linkageType:     externalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - error_r
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - backtrace_append_libc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'backtrace-string.c:168,9'
          Dst:             backtrace_append_libc
    - functionName:    backtrace_append_libc
      functionSourceFile: '/src/dovecot/src/lib/backtrace-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - str
        - error_r
      BBCount:         28
      ICount:          174
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - backtrace
        - backtrace_symbols
        - str_append
        - str_begins_with
        - str_len
        - strncmp
        - strrchr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'backtrace-string.c:82,6'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:83,4'
              BranchSideFuncs: []
            - BranchSide:      'backtrace-string.c:87,30'
              BranchSideFuncs:
                - backtrace_symbols
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - strncmp
                - str_append.10868
        - Branch String:   'backtrace-string.c:88,6'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:89,4'
              BranchSideFuncs: []
            - BranchSide:      'backtrace-string.c:92,9'
              BranchSideFuncs:
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - strncmp
                - str_append.10868
        - Branch String:   'backtrace-string.c:92,2'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:93,15'
              BranchSideFuncs:
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - free
                - strncmp
                - str_append.10868
            - BranchSide:      'backtrace-string.c:110,7'
              BranchSideFuncs:
                - free
        - Branch String:   'backtrace-string.c:93,7'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:94,15'
              BranchSideFuncs:
                - str_append.10868
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - free
                - str_len.10869
                - strncmp
            - BranchSide:      'backtrace-string.c:96,15'
              BranchSideFuncs:
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - free
                - str_len.10869
                - str_append.10868
                - strncmp
        - Branch String:   'backtrace-string.c:96,37'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:96,7'
              BranchSideFuncs:
                - strrchr
                - str_append.10868
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strncmp
                - str_append.10868
            - BranchSide:      'backtrace-string.c:102,33'
              BranchSideFuncs:
                - strrchr
                - str_append.10868
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strncmp
                - str_append.10868
        - Branch String:   'backtrace-string.c:96,7'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:97,8'
              BranchSideFuncs:
                - strncmp
                - strrchr
                - str_append.10868
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - str_append.10868
            - BranchSide:      'backtrace-string.c:97,8'
              BranchSideFuncs:
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - free
                - str_len.10869
                - str_len.10869
                - strncmp
                - str_append.10868
        - Branch String:   'backtrace-string.c:97,8'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:102,33'
              BranchSideFuncs:
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - strncmp
                - str_append.10868
            - BranchSide:      'backtrace-string.c:109,2'
              BranchSideFuncs:
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - strncmp
                - str_append.10868
        - Branch String:   'backtrace-string.c:96,7'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:102,33'
              BranchSideFuncs:
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - strncmp
                - str_append.10868
            - BranchSide:      'backtrace-string.c:109,2'
              BranchSideFuncs:
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - str_append.10868
                - strncmp
                - str_append.10868
        - Branch String:   'backtrace-string.c:103,8'
          Branch Sides:
            - BranchSide:      'backtrace-string.c:104,11'
              BranchSideFuncs:
                - str_append.10868
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - strncmp
                - str_append.10868
            - BranchSide:      'backtrace-string.c:106,14'
              BranchSideFuncs:
                - str_append.10868
                - free
                - str_len.10869
                - str_len.10869
                - str_begins_with.10867
                - strrchr
                - strncmp
                - str_append.10868
      Callsites:
        - Src:             'backtrace-string.c:76,25'
          Dst:             str_len
        - Src:             'backtrace-string.c:81,8'
          Dst:             backtrace
        - Src:             'backtrace-string.c:87,12'
          Dst:             backtrace_symbols
        - Src:             'backtrace-string.c:93,7'
          Dst:             str_len
        - Src:             'backtrace-string.c:94,4'
          Dst:             str_append
        - Src:             'backtrace-string.c:96,7'
          Dst:             str_len
        - Src:             'backtrace-string.c:97,8'
          Dst:             strncmp
        - Src:             'backtrace-string.c:97,8'
          Dst:             str_begins_with
        - Src:             'backtrace-string.c:102,25'
          Dst:             strrchr
        - Src:             'backtrace-string.c:107,4'
          Dst:             str_append
    - functionName:    backtrace
      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:    backtrace_symbols
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bits_required64
      functionSourceFile: '/src/dovecot/src/lib/./bits.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - num
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './bits.h:50,9'
          Branch Sides:
            - BranchSide:      './bits.h:50,9'
              BranchSideFuncs: []
            - BranchSide:      './bits.h:50,45'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    nearest_power
      functionSourceFile: '/src/dovecot/src/lib/bits.c'
      linkageType:     externalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 23
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - num
      BBCount:         10
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - bits_required64
        - i_panic
      functionUses:    19
      BranchProfiles:
        - Branch String:   'bits.c:17,2'
          Branch Sides:
            - BranchSide:      'bits.c:17,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'bits.c:19,6'
              BranchSideFuncs:
                - bits_required64
        - Branch String:   'bits.c:19,6'
          Branch Sides:
            - BranchSide:      'bits.c:20,3'
              BranchSideFuncs: []
            - BranchSide:      'bits.c:22,16'
              BranchSideFuncs:
                - bits_required64
      Callsites:
        - Src:             'bits.c:17,2'
          Dst:             i_panic
        - Src:             'bits.c:22,16'
          Dst:             bits_required64
    - functionName:    array_count_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_create_from_buffer_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - array
        - buffer
        - element_size
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_get_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - array
        - count_r
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count_i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:253,13'
          Dst:             array_count_i
    - functionName:    array_append_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - array
        - data
        - count
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - buffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './array.h:212,2'
          Dst:             buffer_append
    - functionName:    array_create_i
      functionSourceFile: '/src/dovecot/src/lib/./array.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - array
        - pool
        - element_size
        - init_count
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_from_buffer_i
        - buffer_create_dynamic_max
      functionUses:    1
      BranchProfiles:
        - Branch String:   './array.h:149,3'
          Branch Sides:
            - BranchSide:      './array.h:149,3'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.10930
            - BranchSide:      './array.h:150,14'
              BranchSideFuncs:
                - buffer_create_dynamic_max
                - array_create_from_buffer_i.10930
      Callsites:
        - Src:             './array.h:148,11'
          Dst:             buffer_create_dynamic_max
        - Src:             './array.h:151,2'
          Dst:             array_create_from_buffer_i
    - functionName:    pool_unref
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:176,6'
          Branch Sides:
            - BranchSide:      './mempool.h:176,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:177,5'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    env_backup_free
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - _env
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pool_unref
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'env-util.c:128,2'
          Dst:             pool_unref
    - functionName:    env_backup_restore
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - env
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - env_clean
        - env_put_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'env-util.c:119,2'
          Dst:             env_clean
        - Src:             'env-util.c:120,2'
          Dst:             env_put_array
    - functionName:    env_clean
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - clearenv
        - i_fatal
      functionUses:    2
      BranchProfiles:
        - Branch String:   'env-util.c:45,6'
          Branch Sides:
            - BranchSide:      'env-util.c:45,6'
              BranchSideFuncs:
                - clearenv
                - i_fatal
            - BranchSide:      'env-util.c:45,6'
              BranchSideFuncs:
                - clearenv
                - i_fatal
        - Branch String:   'env-util.c:45,6'
          Branch Sides:
            - BranchSide:      'env-util.c:46,3'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'env-util.c:59,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'env-util.c:45,6'
          Dst:             clearenv
        - Src:             'env-util.c:46,3'
          Dst:             i_fatal
    - functionName:    env_put_array
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - envs
      BBCount:         17
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 3
      functionsReached:
        - env_put
        - i_panic
        - strchr
        - t_pop
        - t_push
        - t_strdup_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'env-util.c:26,2'
          Branch Sides:
            - BranchSide:      'env-util.c:27,30'
              BranchSideFuncs:
                - strchr
                - t_push
                - t_strdup_until
                - env_put
                - t_pop
                - i_panic
                - i_panic
            - BranchSide:      'env-util.c:34,1'
              BranchSideFuncs: []
        - Branch String:   'env-util.c:28,3'
          Branch Sides:
            - BranchSide:      'env-util.c:28,3'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'env-util.c:29,3'
              BranchSideFuncs:
                - t_push
                - t_strdup_until
                - env_put
                - t_pop
                - strchr
                - i_panic
                - i_panic
        - Branch String:   'env-util.c:32,5'
          Branch Sides:
            - BranchSide:      'env-util.c:32,5'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'env-util.c:32,5'
              BranchSideFuncs:
                - strchr
                - t_push
                - t_strdup_until
                - env_put
                - t_pop
                - i_panic
                - i_panic
      Callsites:
        - Src:             'env-util.c:27,23'
          Dst:             strchr
        - Src:             'env-util.c:28,3'
          Dst:             i_panic
        - Src:             'env-util.c:29,3'
          Dst:             t_push
        - Src:             'env-util.c:30,23'
          Dst:             t_strdup_until
        - Src:             'env-util.c:31,4'
          Dst:             env_put
        - Src:             'env-util.c:32,5'
          Dst:             t_pop
        - Src:             'env-util.c:32,5'
          Dst:             i_panic
    - functionName:    env_put
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 22
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - value
      BBCount:         9
      ICount:          50
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - i_fatal
        - i_panic
        - setenv
        - strchr
      functionUses:    10
      BranchProfiles:
        - Branch String:   'env-util.c:18,2'
          Branch Sides:
            - BranchSide:      'env-util.c:18,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'env-util.c:20,13'
              BranchSideFuncs:
                - setenv
                - i_fatal
        - Branch String:   'env-util.c:20,6'
          Branch Sides:
            - BranchSide:      'env-util.c:21,40'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'env-util.c:22,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'env-util.c:18,2'
          Dst:             strchr
        - Src:             'env-util.c:18,2'
          Dst:             i_panic
        - Src:             'env-util.c:20,6'
          Dst:             setenv
        - Src:             'env-util.c:21,3'
          Dst:             i_fatal
    - functionName:    setenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clearenv
      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:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    env_get_environ_p
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    env_backup_save
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          111
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - env_get_environ_p
        - i_panic
        - malloc_multiply_check
        - p_malloc
        - p_strdup
        - pool_alloconly_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'env-util.c:99,20'
          Branch Sides:
            - BranchSide:      'env-util.c:99,9'
              BranchSideFuncs:
                - env_get_environ_p
                - pool_alloconly_create
                - malloc_multiply_check.10945
                - p_malloc.10947
                - malloc_multiply_check.10945
                - p_malloc.10947
                - p_strdup
                - i_panic
            - BranchSide:      'env-util.c:104,2'
              BranchSideFuncs:
                - env_get_environ_p
                - pool_alloconly_create
                - malloc_multiply_check.10945
                - p_malloc.10947
                - malloc_multiply_check.10945
                - p_malloc.10947
                - p_strdup
                - i_panic
        - Branch String:   'env-util.c:104,2'
          Branch Sides:
            - BranchSide:      'env-util.c:104,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'env-util.c:106,13'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.10945
                - p_malloc.10947
                - malloc_multiply_check.10945
                - p_malloc.10947
                - p_strdup
        - Branch String:   'env-util.c:106,2'
          Branch Sides:
            - BranchSide:      'env-util.c:106,47'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.10945
                - p_malloc.10947
                - malloc_multiply_check.10945
                - p_malloc.10947
                - p_strdup
            - BranchSide:      'env-util.c:108,9'
              BranchSideFuncs:
                - pool_alloconly_create
                - malloc_multiply_check.10945
                - p_malloc.10947
                - malloc_multiply_check.10945
                - p_malloc.10947
                - p_strdup
        - Branch String:   'env-util.c:112,2'
          Branch Sides:
            - BranchSide:      'env-util.c:113,30'
              BranchSideFuncs:
                - p_strdup
            - BranchSide:      'env-util.c:114,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             'env-util.c:99,20'
          Dst:             env_get_environ_p
        - Src:             'env-util.c:104,2'
          Dst:             i_panic
        - Src:             'env-util.c:108,9'
          Dst:             pool_alloconly_create
        - Src:             'env-util.c:109,8'
          Dst:             malloc_multiply_check
        - Src:             'env-util.c:109,8'
          Dst:             p_malloc
        - Src:             'env-util.c:111,17'
          Dst:             malloc_multiply_check
        - Src:             'env-util.c:111,17'
          Dst:             p_malloc
        - Src:             'env-util.c:113,21'
          Dst:             p_strdup
    - functionName:    env_clean_except_real
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - preserve_envs
      BBCount:         14
      ICount:          106
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - array_append_i
        - array_create_i
        - array_get_i
        - env_clean
        - env_put
        - getenv
        - pool_datastack_create
        - t_strdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'env-util.c:68,2'
          Branch Sides:
            - BranchSide:      'env-util.c:69,21'
              BranchSideFuncs:
                - getenv
                - env_clean
                - array_get_i.10931
                - env_put
                - t_strdup
                - t_strdup
                - array_append_i.10932
                - array_append_i.10932
            - BranchSide:      'env-util.c:83,2'
              BranchSideFuncs:
                - env_clean
                - array_get_i.10931
                - env_put
        - Branch String:   'env-util.c:72,7'
          Branch Sides:
            - BranchSide:      'env-util.c:73,19'
              BranchSideFuncs:
                - t_strdup
                - t_strdup
                - array_append_i.10932
                - array_append_i.10932
                - env_clean
                - array_get_i.10931
                - env_put
                - getenv
            - BranchSide:      'env-util.c:78,2'
              BranchSideFuncs:
                - env_clean
                - array_get_i.10931
                - env_put
                - getenv
                - t_strdup
                - t_strdup
                - array_append_i.10932
                - array_append_i.10932
        - Branch String:   'env-util.c:86,2'
          Branch Sides:
            - BranchSide:      'env-util.c:87,11'
              BranchSideFuncs:
                - env_put
            - BranchSide:      'env-util.c:88,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'env-util.c:67,2'
          Dst:             pool_datastack_create
        - Src:             'env-util.c:67,2'
          Dst:             array_create_i
        - Src:             'env-util.c:71,11'
          Dst:             getenv
        - Src:             'env-util.c:73,10'
          Dst:             t_strdup
        - Src:             'env-util.c:74,12'
          Dst:             t_strdup
        - Src:             'env-util.c:75,4'
          Dst:             array_append_i
        - Src:             'env-util.c:76,4'
          Dst:             array_append_i
        - Src:             'env-util.c:83,2'
          Dst:             env_clean
        - Src:             'env-util.c:85,9'
          Dst:             array_get_i
        - Src:             'env-util.c:87,3'
          Dst:             env_put
    - functionName:    env_clean_except
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - preserve_envs
      BBCount:         9
      ICount:          40
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - env_clean_except_real
        - i_panic
        - t_pop
        - t_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'env-util.c:94,4'
          Branch Sides:
            - BranchSide:      'env-util.c:94,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'env-util.c:94,4'
              BranchSideFuncs: []
      Callsites:
        - Src:             'env-util.c:92,2'
          Dst:             t_push
        - Src:             'env-util.c:93,3'
          Dst:             env_clean_except_real
        - Src:             'env-util.c:94,4'
          Dst:             t_pop
        - Src:             'env-util.c:94,4'
          Dst:             i_panic
    - functionName:    env_remove
      functionSourceFile: '/src/dovecot/src/lib/env-util.c'
      linkageType:     externalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
      BBCount:         5
      ICount:          28
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - i_fatal
        - unsetenv
      functionUses:    8
      BranchProfiles:
        - Branch String:   'env-util.c:38,6'
          Branch Sides:
            - BranchSide:      'env-util.c:39,38'
              BranchSideFuncs:
                - i_fatal
            - BranchSide:      'env-util.c:40,1'
              BranchSideFuncs: []
      Callsites:
        - Src:             'env-util.c:38,6'
          Dst:             unsetenv
        - Src:             'env-util.c:39,3'
          Dst:             i_fatal
    - functionName:    unsetenv
      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:    fd_read
      functionSourceFile: '/src/dovecot/src/lib/fdpass.c'
      linkageType:     externalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - handle
        - data
        - size
        - fd
      BBCount:         26
      ICount:          167
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - i_memcpy
        - i_panic
        - recvmsg
      functionUses:    1
      BranchProfiles:
        - Branch String:   'fdpass.c:162,2'
          Branch Sides:
            - BranchSide:      'fdpass.c:162,2'
              BranchSideFuncs:
                - recvmsg
                - i_memcpy.10972
                - i_panic
            - BranchSide:      'fdpass.c:162,2'
              BranchSideFuncs:
                - recvmsg
                - i_memcpy.10972
                - i_panic
        - Branch String:   'fdpass.c:162,2'
          Branch Sides:
            - BranchSide:      'fdpass.c:162,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'fdpass.c:164,2'
              BranchSideFuncs:
                - recvmsg
                - i_memcpy.10972
        - Branch String:   'fdpass.c:177,6'
          Branch Sides:
            - BranchSide:      'fdpass.c:178,4'
              BranchSideFuncs: []
            - BranchSide:      'fdpass.c:187,9'
              BranchSideFuncs:
                - i_memcpy.10972
        - Branch String:   'fdpass.c:187,9'
          Branch Sides:
            - BranchSide:      'fdpass.c:187,7'
              BranchSideFuncs:
                - i_memcpy.10972
            - BranchSide:      'fdpass.c:187,7'
              BranchSideFuncs:
                - i_memcpy.10972
        - Branch String:   'fdpass.c:188,7'
          Branch Sides:
            - BranchSide:      'fdpass.c:188,7'
              BranchSideFuncs:
                - i_memcpy.10972
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs: []
        - Branch String:   'fdpass.c:188,7'
          Branch Sides:
            - BranchSide:      'fdpass.c:188,7'
              BranchSideFuncs:
                - i_memcpy.10972
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs: []
        - Branch String:   'fdpass.c:188,7'
          Branch Sides:
            - BranchSide:      'fdpass.c:188,7'
              BranchSideFuncs:
                - i_memcpy.10972
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs: []
        - Branch String:   'fdpass.c:188,6'
          Branch Sides:
            - BranchSide:      'fdpass.c:189,4'
              BranchSideFuncs:
                - i_memcpy.10972
            - BranchSide:      'fdpass.c:191,3'
              BranchSideFuncs:
                - i_memcpy.10972
      Callsites:
        - Src:             'fdpass.c:162,2'
          Dst:             i_panic
        - Src:             'fdpass.c:176,8'
          Dst:             recvmsg
        - Src:             'fdpass.c:191,3'
          Dst:             i_memcpy
    - functionName:    recvmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_memcpy
      functionSourceFile: '/src/dovecot/src/lib/./lib.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - dest
        - src
        - n
      BBCount:         10
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    2
      BranchProfiles:
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './lib.h:75,2'
          Branch Sides:
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './lib.h:75,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             './lib.h:75,2'
          Dst:             i_panic
    - functionName:    fd_send
      functionSourceFile: '/src/dovecot/src/lib/fdpass.c'
      linkageType:     externalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - handle
        - send_fd
        - data
        - size
      BBCount:         16
      ICount:          125
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - i_memcpy
        - i_panic
        - sendmsg
      functionUses:    1
      BranchProfiles:
        - Branch String:   'fdpass.c:112,2'
          Branch Sides:
            - BranchSide:      'fdpass.c:112,2'
              BranchSideFuncs:
                - sendmsg
                - i_memcpy.10972
                - i_panic
            - BranchSide:      'fdpass.c:112,2'
              BranchSideFuncs:
                - sendmsg
                - i_memcpy.10972
                - i_panic
        - Branch String:   'fdpass.c:112,2'
          Branch Sides:
            - BranchSide:      'fdpass.c:112,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'fdpass.c:114,2'
              BranchSideFuncs:
                - sendmsg
                - i_memcpy.10972
        - Branch String:   'fdpass.c:122,6'
          Branch Sides:
            - BranchSide:      'fdpass.c:122,6'
              BranchSideFuncs:
                - i_memcpy.10972
                - sendmsg
            - BranchSide:      'fdpass.c:124,3'
              BranchSideFuncs:
                - i_memcpy.10972
                - sendmsg
        - Branch String:   'fdpass.c:128,10'
          Branch Sides:
            - BranchSide:      'fdpass.c:128,8'
              BranchSideFuncs:
                - i_memcpy.10972
                - sendmsg
            - BranchSide:      'fdpass.c:128,8'
              BranchSideFuncs:
                - i_memcpy.10972
                - sendmsg
      Callsites:
        - Src:             'fdpass.c:112,2'
          Dst:             i_panic
        - Src:             'fdpass.c:132,3'
          Dst:             i_memcpy
        - Src:             'fdpass.c:140,9'
          Dst:             sendmsg
    - functionName:    sendmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_getgrgid
      functionSourceFile: '/src/dovecot/src/lib/ipwd.c'
      linkageType:     externalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - gid
        - grp_r
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - getgrgid_r
        - gr_init
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ipwd.c:99,2'
          Branch Sides:
            - BranchSide:      'ipwd.c:97,3'
              BranchSideFuncs:
                - gr_init
                - getgrgid_r
                - __errno_location
                - __errno_location
                - __errno_location
            - BranchSide:      'ipwd.c:100,6'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'ipwd.c:100,6'
          Branch Sides:
            - BranchSide:      'ipwd.c:101,3'
              BranchSideFuncs: []
            - BranchSide:      'ipwd.c:102,9'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ipwd.c:95,2'
          Dst:             __errno_location
        - Src:             'ipwd.c:97,3'
          Dst:             gr_init
        - Src:             'ipwd.c:98,11'
          Dst:             getgrgid_r
        - Src:             'ipwd.c:98,3'
          Dst:             __errno_location
        - Src:             'ipwd.c:99,11'
          Dst:             __errno_location
        - Src:             'ipwd.c:102,9'
          Dst:             __errno_location
    - functionName:    gr_init
      functionSourceFile: '/src/dovecot/src/lib/ipwd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          58
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - i_realloc
        - nearest_power
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ipwd.c:29,26'
          Branch Sides:
            - BranchSide:      'ipwd.c:29,9'
              BranchSideFuncs:
                - __errno_location
                - nearest_power
                - i_realloc
            - BranchSide:      'ipwd.c:29,26'
              BranchSideFuncs:
                - __errno_location
                - nearest_power
                - i_realloc
        - Branch String:   'ipwd.c:31,20'
          Branch Sides:
            - BranchSide:      'ipwd.c:31,23'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
            - BranchSide:      'ipwd.c:32,30'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
        - Branch String:   'ipwd.c:31,6'
          Branch Sides:
            - BranchSide:      'ipwd.c:31,6'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
            - BranchSide:      'ipwd.c:32,30'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
        - Branch String:   'ipwd.c:33,7'
          Branch Sides:
            - BranchSide:      'ipwd.c:34,15'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ipwd.c:35,21'
              BranchSideFuncs:
                - i_realloc
      Callsites:
        - Src:             'ipwd.c:31,23'
          Dst:             __errno_location
        - Src:             'ipwd.c:32,16'
          Dst:             nearest_power
        - Src:             'ipwd.c:35,11'
          Dst:             i_realloc
    - functionName:    getgrgid_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_getgrnam
      functionSourceFile: '/src/dovecot/src/lib/ipwd.c'
      linkageType:     externalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - grp_r
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - getgrnam_r
        - gr_init
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ipwd.c:85,2'
          Branch Sides:
            - BranchSide:      'ipwd.c:83,3'
              BranchSideFuncs:
                - gr_init
                - getgrnam_r
                - __errno_location
                - __errno_location
                - __errno_location
            - BranchSide:      'ipwd.c:86,6'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'ipwd.c:86,6'
          Branch Sides:
            - BranchSide:      'ipwd.c:87,3'
              BranchSideFuncs: []
            - BranchSide:      'ipwd.c:88,9'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ipwd.c:81,2'
          Dst:             __errno_location
        - Src:             'ipwd.c:83,3'
          Dst:             gr_init
        - Src:             'ipwd.c:84,11'
          Dst:             getgrnam_r
        - Src:             'ipwd.c:84,3'
          Dst:             __errno_location
        - Src:             'ipwd.c:85,11'
          Dst:             __errno_location
        - Src:             'ipwd.c:88,9'
          Dst:             __errno_location
    - functionName:    getgrnam_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_getpwuid
      functionSourceFile: '/src/dovecot/src/lib/ipwd.c'
      linkageType:     externalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - uid
        - pwd_r
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - getpwuid_r
        - pw_init
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ipwd.c:71,2'
          Branch Sides:
            - BranchSide:      'ipwd.c:69,3'
              BranchSideFuncs:
                - pw_init
                - getpwuid_r
                - __errno_location
                - __errno_location
                - __errno_location
            - BranchSide:      'ipwd.c:72,6'
              BranchSideFuncs:
                - __errno_location
        - Branch String:   'ipwd.c:72,6'
          Branch Sides:
            - BranchSide:      'ipwd.c:73,3'
              BranchSideFuncs: []
            - BranchSide:      'ipwd.c:74,9'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ipwd.c:67,2'
          Dst:             __errno_location
        - Src:             'ipwd.c:69,3'
          Dst:             pw_init
        - Src:             'ipwd.c:70,11'
          Dst:             getpwuid_r
        - Src:             'ipwd.c:70,3'
          Dst:             __errno_location
        - Src:             'ipwd.c:71,11'
          Dst:             __errno_location
        - Src:             'ipwd.c:74,9'
          Dst:             __errno_location
    - functionName:    pw_init
      functionSourceFile: '/src/dovecot/src/lib/ipwd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          58
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - i_realloc
        - nearest_power
      functionUses:    2
      BranchProfiles:
        - Branch String:   'ipwd.c:17,26'
          Branch Sides:
            - BranchSide:      'ipwd.c:17,9'
              BranchSideFuncs:
                - __errno_location
                - nearest_power
                - i_realloc
            - BranchSide:      'ipwd.c:17,26'
              BranchSideFuncs:
                - __errno_location
                - nearest_power
                - i_realloc
        - Branch String:   'ipwd.c:19,20'
          Branch Sides:
            - BranchSide:      'ipwd.c:19,23'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
            - BranchSide:      'ipwd.c:20,30'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
        - Branch String:   'ipwd.c:19,6'
          Branch Sides:
            - BranchSide:      'ipwd.c:19,6'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
            - BranchSide:      'ipwd.c:20,30'
              BranchSideFuncs:
                - nearest_power
                - i_realloc
        - Branch String:   'ipwd.c:21,7'
          Branch Sides:
            - BranchSide:      'ipwd.c:22,15'
              BranchSideFuncs:
                - i_realloc
            - BranchSide:      'ipwd.c:23,21'
              BranchSideFuncs:
                - i_realloc
      Callsites:
        - Src:             'ipwd.c:19,23'
          Dst:             __errno_location
        - Src:             'ipwd.c:20,16'
          Dst:             nearest_power
        - Src:             'ipwd.c:23,11'
          Dst:             i_realloc
    - functionName:    getpwuid_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i_getpwnam
      functionSourceFile: '/src/dovecot/src/lib/ipwd.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - name
        - pwd_r
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - getpwnam_r
        - pw_init
      functionUses:    0
      BranchProfiles:
        - Branch String:   'ipwd.c:53,2'
          Branch Sides:
            - BranchSide:      'ipwd.c:51,3'
              BranchSideFuncs:
                - pw_init
                - getpwnam_r
                - __errno_location
                - __errno_location
                - __errno_location
                - __errno_location
            - BranchSide:      'ipwd.c:54,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
        - Branch String:   'ipwd.c:54,6'
          Branch Sides:
            - BranchSide:      'ipwd.c:55,3'
              BranchSideFuncs: []
            - BranchSide:      'ipwd.c:56,6'
              BranchSideFuncs:
                - __errno_location
                - __errno_location
        - Branch String:   'ipwd.c:56,6'
          Branch Sides:
            - BranchSide:      'ipwd.c:58,3'
              BranchSideFuncs: []
            - BranchSide:      'ipwd.c:60,9'
              BranchSideFuncs:
                - __errno_location
      Callsites:
        - Src:             'ipwd.c:49,2'
          Dst:             __errno_location
        - Src:             'ipwd.c:51,3'
          Dst:             pw_init
        - Src:             'ipwd.c:52,11'
          Dst:             getpwnam_r
        - Src:             'ipwd.c:52,3'
          Dst:             __errno_location
        - Src:             'ipwd.c:53,11'
          Dst:             __errno_location
        - Src:             'ipwd.c:56,6'
          Dst:             __errno_location
        - Src:             'ipwd.c:60,9'
          Dst:             __errno_location
    - functionName:    getpwnam_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ipwd_deinit
      functionSourceFile: '/src/dovecot/src/lib/ipwd.c'
      linkageType:     externalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ipwd.c:41,2'
          Branch Sides:
            - BranchSide:      'ipwd.c:41,2'
              BranchSideFuncs:
                - p_free_internal.11004
                - p_free_internal.11004
            - BranchSide:      'ipwd.c:41,2'
              BranchSideFuncs:
                - p_free_internal.11004
                - p_free_internal.11004
      Callsites:
        - Src:             'ipwd.c:41,2'
          Dst:             p_free_internal
        - Src:             'ipwd.c:42,2'
          Dst:             p_free_internal
    - functionName:    ioloop_iolist_del
      functionSourceFile: '/src/dovecot/src/lib/ioloop-iolist.c'
      linkageType:     externalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - io
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-iolist.c:47,2'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:48,7'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-iolist.c:55,9'
              BranchSideFuncs: []
        - Branch String:   'ioloop-iolist.c:48,7'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:49,8'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-iolist.c:54,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop-iolist.c:49,8'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:50,5'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-iolist.c:52,10'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    ioloop_iolist_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop-iolist.c'
      linkageType:     externalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - list
        - io
      BBCount:         28
      ICount:          175
      EdgeCount:       33
      CyclomaticComplexity: 7
      functionsReached:
        - i_panic
        - i_unreached
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-iolist.c:15,6'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:16,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ioloop-iolist.c:17,12'
              BranchSideFuncs:
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'ioloop-iolist.c:17,11'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:18,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ioloop-iolist.c:19,12'
              BranchSideFuncs:
                - i_unreached
                - i_panic
                - i_panic
        - Branch String:   'ioloop-iolist.c:19,11'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:20,7'
              BranchSideFuncs:
                - i_panic
                - i_panic
            - BranchSide:      'ioloop-iolist.c:22,3'
              BranchSideFuncs:
                - i_unreached
        - Branch String:   'ioloop-iolist.c:25,6'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:27,4'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop-iolist.c:30,2'
              BranchSideFuncs:
                - i_panic
        - Branch String:   'ioloop-iolist.c:30,2'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:30,2'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      'ioloop-iolist.c:31,19'
              BranchSideFuncs: []
        - Branch String:   'ioloop-iolist.c:34,2'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:35,7'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-iolist.c:39,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop-iolist.c:35,16'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:35,19'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-iolist.c:37,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop-iolist.c:35,7'
          Branch Sides:
            - BranchSide:      'ioloop-iolist.c:36,4'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-iolist.c:37,2'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop-iolist.c:22,3'
          Dst:             i_unreached
        - Src:             'ioloop-iolist.c:26,3'
          Dst:             i_panic
        - Src:             'ioloop-iolist.c:30,2'
          Dst:             i_panic
    - functionName:    io_notify_fd_find
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-fd.c'
      linkageType:     externalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ctx
        - fd
      BBCount:         8
      ICount:          49
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-fd.c:47,2'
          Branch Sides:
            - BranchSide:      'ioloop-notify-fd.c:48,7'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-fd.c:52,2'
              BranchSideFuncs: []
        - Branch String:   'ioloop-notify-fd.c:48,7'
          Branch Sides:
            - BranchSide:      'ioloop-notify-fd.c:49,11'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-fd.c:50,2'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    p_free_internal
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - pool
        - mem
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:150,6'
          Branch Sides:
            - BranchSide:      './mempool.h:150,6'
              BranchSideFuncs: []
            - BranchSide:      './mempool.h:151,3'
              BranchSideFuncs: []
      Callsites:       []
    - functionName:    io_notify_fd_free
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-fd.c'
      linkageType:     externalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - io
      BBCount:         11
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - p_free_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-fd.c:32,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-fd.c:33,20'
              BranchSideFuncs:
                - p_free_internal.11041
            - BranchSide:      'ioloop-notify-fd.c:35,19'
              BranchSideFuncs:
                - p_free_internal.11041
        - Branch String:   'ioloop-notify-fd.c:37,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-fd.c:38,20'
              BranchSideFuncs:
                - p_free_internal.11041
            - BranchSide:      'ioloop-notify-fd.c:39,2'
              BranchSideFuncs:
                - p_free_internal.11041
      Callsites:
        - Src:             'ioloop-notify-fd.c:39,2'
          Dst:             p_free_internal
    - functionName:    malloc_multiply_check
      functionSourceFile: '/src/dovecot/src/lib/./malloc-overflow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - a
        - b
        - sizeof_a
        - sizeof_b
        - fname
        - linenum
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './malloc-overflow.h:16,37'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,40'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:16,71'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,71'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './malloc-overflow.h:17,13'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:17,17'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:17,13'
              BranchSideFuncs: []
        - Branch String:   './malloc-overflow.h:16,6'
          Branch Sides:
            - BranchSide:      './malloc-overflow.h:16,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './malloc-overflow.h:19,4'
              BranchSideFuncs:
                - i_panic
      Callsites:
        - Src:             './malloc-overflow.h:18,3'
          Dst:             i_panic
    - functionName:    p_malloc
      functionSourceFile: '/src/dovecot/src/lib/./mempool.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - pool
        - size
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - i_panic
      functionUses:    1
      BranchProfiles:
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:118,6'
              BranchSideFuncs:
                - i_panic
        - Branch String:   './mempool.h:118,6'
          Branch Sides:
            - BranchSide:      './mempool.h:119,43'
              BranchSideFuncs:
                - i_panic
            - BranchSide:      './mempool.h:121,9'
              BranchSideFuncs: []
      Callsites:
        - Src:             './mempool.h:119,3'
          Dst:             i_panic
    - functionName:    io_notify_fd_add
      functionSourceFile: '/src/dovecot/src/lib/ioloop-notify-fd.c'
      linkageType:     externalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ctx
        - fd
        - callback
        - context
      BBCount:         6
      ICount:          84
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - malloc_multiply_check
        - p_malloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'ioloop-notify-fd.c:21,6'
          Branch Sides:
            - BranchSide:      'ioloop-notify-fd.c:21,6'
              BranchSideFuncs: []
            - BranchSide:      'ioloop-notify-fd.c:22,25'
              BranchSideFuncs: []
      Callsites:
        - Src:             'ioloop-notify-fd.c:14,7'
          Dst:             malloc_multiply_check
        - Src:             'ioloop-notify-fd.c:14,7'
          Dst:             p_malloc
...
